Développer rapidement un prototype d'API Rest
18 Septembre 2014
Les API se sont généralisées aujourd’hui et dans mon taf il n’est pas rare de devoir développer une webapp ou une application mobile alors que l’API n’existe pas encore. J’ai rencontré ce problème il y a peu lorsque je devais développer une application android alors que le développeur backend n’avait pas encore commencé à développer l’API. Voici un moyen d’avoir rapidement une API de prototype pour faciliter le développement…
Le dépôt json-server contient un simple module node.js qui permet de simplement développer (plutôt écrire) une API sans base de données puisque les données sont stockées dans un fichier au format json
et parsée par un serveur.
Installation
Comme c’est un module node.js, l’installation se fait avec NPM, comme c’est un utilitaire j’aime bien l’avoir en global :
$> npm install -g json-server
Vous avez maintenant un nouveau binaire dans votre $PATH
pour lancer le serveur : json-server
.
Utilisation de l’API
Pour initialiser votre API, créez un fichier db.json
et ajoutez-y les données que vous voulez (dans mon exemple j’ai des dossiers, des fichiers et des utilisateurs) :
{
"folders": [
{ "id": 1, "name": "foo" },
{ "id": 2, "name": "bar" }
],
"files": [
{ "id": 1, "name": "baz", "userId": 1 },
{ "id": 2, "name": "qux", "userId": 1 },
{ "id": 3, "name": "blah", "userId": 1 }
],
"users": [
{ "id": 1, "name": "Lorem ipsum"},
{ "id": 2, "name": "Taurex Aile"}
]
}
Démarrez votre serveur et vous devriez pouvoir taper sur votre API Rest qui vous a pris moins de 3 minutes à écrire :
$> json-server -f db.json -p 2707
Ouvrez-votre navigateur et tapez l’URL http://localhost:2707/, vous devriez voir la page de status de votre API et vous pourrez taper comme vous le voulez avec des GET, des POSTS sur vos ressources.
Voilà, ce qui est bien c’est que le script gère pas mal de méthode HTTP et que le serveur est même capable de remplacer le Json de base par les données que vous ajouterez. Un petit utilitaire super pratique…