API REST - Utilisez l'en-tête HTTP "Accept: application / json"
Quand je fais une demande, je reçois en retour un XML. Mais ce dont j'ai besoin est un JSON. Dans la doc il est indiqué afin d'obtenir un JSON en retour: l'Utilisation de la Accept: application/json
en-Tête HTTP.
Mais où, au nom des dieux puis-je trouver l'en-Tête HTTP pour mettre Accept: application/json
à l'intérieur.
Ma conjecture est que c'est pas supposé être à l'intérieur de la requête URL, ce qui ressemble à:
http://localhost:8080/otp/routers/default/plan?fromPlace=52.5895,13.2836&toPlace=52.5461,13.3588&date=2017/04/04&time=12:00:00
source d'informationauteur obrob
Vous devez vous connecter pour publier un commentaire.
Vous l'aurez deviné, les en-Têtes HTTP ne font pas partie de l'URL.
Et lorsque vous tapez une URL dans le navigateur, la demande sera émis avec des en-têtes standard. De toute façon les Api REST ne sont pas destinés à être consommés en tapant le point de terminaison dans la barre d'adresse d'un navigateur.
Le scénario le plus courant est que votre serveur consomme un tiers de l'Api REST.
Pour faire de votre code côté serveur forges un bon (GET/PUT/POST/DELETE) demande de pointage à un point de terminaison (URL) paramètre (en cas de besoin, comme votre cas), certains les en-têtes de et enfin (peut-être) l'envoi de certaines données (comme généralement atteint son apogée dans une requête POST par exemple).
Le code de forger la demande, envoyer et obtenir enfin la réponse dépend de votre côté serveur de la langue.
Si vous voulez test une Api REST, vous pouvez utiliser
curl
outil depuis la ligne de commande.curl
fait une demande de sortie et la réponse à la sortie standard (sauf indication contraire).Dans votre cas, la demande de test pourraient être émis comme ceci:
La
H
ou--header
directive permet de définir un en-tête et sa valeur.Bien Curl pourrait être une meilleure option pour la représentation json, mais dans ce cas, il serait difficile de comprendre la structure du json en raison de son en ligne de commande.
si vous souhaitez obtenir votre json sur navigateur, il vous suffit de supprimer tous les XML Annotations comme -
à partir de votre modèle de classe et que de courir la même url, vous avez utilisé pour la représentation xml.
Assurez-vous que vous avez jacson-databind de la dépendance dans votre pom.xml