Implémentation d'un service API à interroger sur les données utilisateur qui est stockée dans un fichier XML et mappée sur la méthode APIServlet Get et renvoyant un tableau JSON
L'interface de programmation d'application ou l'API est un intermédiaire logiciel qui permet à deux applications de se parler. Lorsque vous utilisez une application sur votre téléphone mobile, c'est ce qui se passe:
Votre tâche consiste à implémenter un service API à interroger sur les données utilisateur qui est stockée dans com.he.api.data.xml dans le format suivant.
<dataset id_auto_increment="3"›
<user id="1" firstName="John" lastName="Dawson"/>
<user id="2" firstName="John" lastName="Doe"/>
</dataset>
La balise <dataset> est l'élément racine du document XML. Il a un seul attribut id_auto_increment . La valeur de son ID augmente comme suit: Valeur de l'ID de l'utilisateur qui a été ajouté en dernier + 1
La balise <user /> représente un enregistrement utilisateur dans l'ensemble de données. Il a des attributs suivants:
L'appel à serveur serait fait par scheme://domain:port/API?action=#&id=#&firstName=#&lastName=# , où 'String' après '?' indique la chaîne de requête.
Vous devez implémenter un service API qui est mappé sur la méthode GET ( com.he.api.apiservlet.java) (au schéma URL: // domaine: port / api). La chaîne de requête (en savoir plus sur les chaînes de requête ici) peut avoir des paramètres suivants:
Les requêtes peuvent être des types suivants:
Exemple URL: scheme://domain:port/API?action=searchById&id=1
Réponse:
[{
"id": 1,
"firstName": "John",
"lastName": "Dawson"
}l
Exemple URL: scheme://domain:port/API?action=searchByFirstName&firstName=John
Réponse:
[{
"id": 1,
"firstName": "John",
"lastName": "Dawson"
}, {
"id": 2,
"firstName": "John",
"lastName": "Doe"
}]
Exemple URL: scheme://domain:port/API?action=searchByLastName&lastName=Doe
Réponse:
[{
"id": 2,
"firstName": "John",
"lastName": "Doe"
}]
Exemple URL: scheme://domain:port/API?action=searchByIdRange&low=1&high=2
Réponse:
[{
"id": 1,
"firstName": "John",
"lastName": "Dawson"
}, {
"id": 2,
"firstName": "John",
"lastName": "Doe"
}]
Exemple URL: scheme://domain:port/API?action=updateUser&id=1&firstName=James&lastName=Jackson
<dataset id auto increment="3">
<user id="1" firstName="James" lastName="Jackson"/>
<user id="2" firstName="John" lastName="Doe"/>
</dataset>
L'ID de l'utilisateur est donné par le paramètre id_auto_increment de la balise de jeu de données racine. Une fois la valeur insérée, le paramètre id_auto_increment est incrémenté de 1.
Exemple URL: scheme://domain:port/API?action=insertUser&firstName=James&lastName=Jackson
<dataset id auto increment="4">
<user id="1" firstName="John" lastName="Dawson"/>
<user id="2" firstName="John" lastName="Doe"/>
<user id="3" firstName="James" lastName="Jackson"/>
</dataset>
Testez votre implémentation API en comparant le mappage de votre tableau JSON et de votre DOM XML.