Outils pour utilisateurs

Outils du site


informatique:api-rest:php-crud-api

php-crud-api

Petite API disponible sur:
https://github.com/mevdschee/php-crud-api

Ne semble pas supporter l'écriture de données géographiques :-(

Installation

Elle se limite à un seul fichier api.php
Copier simplement le fichier api.php… lors de mes premiers tests, j'ai placé ce fichier dans un répertoire vendor de mon répertoire projet.
Bien modifier l'accès à la base à la fin du fichier api.php Par défaut, l'API travaille en mysql, pour lui spécifier de travailler en pgsql, il faut ajouter (je l'ai mis juste avant le 'username'):

    $config = new Config([
        'driver' => 'pgsql'

C'est donc dans le répertoire vendor que j'ai lancé

php -S localhost:8000

Utlisation

Quelques exemples d'utilisation, dans mon exemple, tout d'abord sur ma base C14_banadora:

via URL dans le navigateur

en CLI, avec cUrl

Dans les lignes ci-dessous j'ai mis <mon_mot2passe> qui est à remplacer par votre mot de passe, comme l'identifiant, évidement sans <>
# pour lire (GET)
curl -X GET localhost:8000/mevdschee_rest_api.php/records/location_said_place/80
# ou 
curl -XGET -u bertrand:<mon_mot2passe> localhost:8000/mevdschee_rest_api.php/records/location_said_place/80
# POUR MODIFIER (PUT <-> UPDATE)
# sans spécifier de format, donc "SQL":
curl -X PUT -u bertrand:<mon_mot2passe> -d "place_name=testBD" localhost:8000/mevdschee_rest_api.php/records/location_said_place/80
# en JSON:
curl -X PUT -u bertrand:<mon_mot2passe> --header "Content-Type:application/json" --data '{"place_nam" : "testBD-json"}' localhost:8000/mevdschee_rest_api.php/records/location_said_place/80

en PostGreSQL

ce qui retourne bien:

records	
  0	
	id	1
	name	"London, England"
	geom	"POINT(-0.1257 51.508)"
  1	
	id	2
	name	"London, Ontario"
	geom	"POINT(-81.233 42.983)"
  2	
	id	3
	name	"East London,SA"
	geom	"POINT(27.91162491 -33.01529)"
informatique/api-rest/php-crud-api.txt · Dernière modification : 2019/10/09 09:45 de bertrand