Facteur de forme de données fonctionne, mais le raw n'a pas d'équivalent
J'ai une API que je suis en essais avec et si j'envoie mes données par "form-data" avec les valeurs suivantes cela fonctionne:
key: response[comment]
value: This is a test
Mais si je fais un peu JSON personnalisé dans le "raw" de l'onglet avec la structure suivante, il ne fonctionne pas:
{ "response[comment]": "This is a test" }
Ça me rend fou d'être honnête que le serveur ne veut pas me donner des détails sur ce qui est mal.
J'ai la sensation que c'est le codage de l'objet qui va mal, mais je suis en utilisant Angulaire et j'obtiens la même erreur 400, alors que je suis persuadé qu'il devrait fonctionner avec un JS objet en tant que données sur .post.
Toute aide serait appréciée!
Comprenez-vous que le JSON et www-form-urlencoded sont en fait différents formats? Je doute qu'il y est un moyen pour forcer le serveur à analyser JSON codé en charge par le client.
Oui, je ne suis pas à l'aide de x-www-form-urlencoded bien, je suis en utilisant le formulaire de données en Facteur, qui est JSON 😉 C'est la raison pour laquelle je suis si confus. Il doit y avoir un en-tête qui est éteint ou quelque chose.
Oui, je ne suis pas à l'aide de x-www-form-urlencoded bien, je suis en utilisant le formulaire de données en Facteur, qui est JSON 😉 C'est la raison pour laquelle je suis si confus. Il doit y avoir un en-tête qui est éteint ou quelque chose.
OriginalL'auteur Reinier Kaper | 2015-01-03
Vous devez vous connecter pour publier un commentaire.
Assurer votre
Content-Type
en-tête de!Si vos données brutes est JSON:
Content-Type: application/json
J'ai connu un problème similaire à la vôtre: ma demande de travail à l'aide de la de données de formulaire, mais pas comme raw... et après le débogage de la requête côté serveur, j'ai réalisé à ma demande Type de Contenu a été
"text/plain;charset=UTF-8"
.. même si JSON a été sélectionné dans le côté déroulante...Espère que ça permet de gagner du temps pour la prochaine 😉
OriginalL'auteur jobwat
Bon j'ai trouvé.
Apparemment le "commentaire[réponse]" est en réalité:
en JSON.
Appris quelque chose 🙂
OriginalL'auteur Reinier Kaper
Dans mon cas, l'un formulaire de saisie de données a été transformé en un en-tête, et n'est pas incluse dans le corps. Il a également travaillé pour définir l'en-tête explicitement plutôt que d'entrer dans les données de formulaire. Le Type de Contenu et mise en forme JSON à partir d'autres réponses n'étaient pas impliqués. Je ne m'attends pas arbitraire de données de formulaire touches de travailler de cette façon; la seule clé utilisé dans ce cas est "ID".
OriginalL'auteur ShadSterling
Moi aussi j'avais une API et si j'envoie mes données par "form-data" avec les valeurs suivantes cela fonctionne:
clés: survey_answer[answers_json]
valeur: {"2456-9876-4ff7-9807-4097ed21be57":"les tests de facteur-aujourd'hui "}
et j'ai essayé de le convertir en données brutes, donc finalement j'ai pu résoudre ce problème en
{"survey_answer":{"answers_json": {"2ed4e729-c1fa-4ff7-9807-4097ed21be57":"test de tessa"}}}
et Si vos données brutes est JSON: set Content-Type: application/json
Espère que cela aide 🙂
OriginalL'auteur j.krissa
Sélectionnez raw option avec JSON(application/json).
OriginalL'auteur mohit uprim
Dans mon cas, l'url a été
localhost/index.php?userId=1
- et j'ai été en utilisant le mode raw avec{ "username":"abc" }
Puis, je me suis converti à l'url de
localhost/index.php?userId=1&username=abc
- il travaille pourGET
et pourPOST
avec le json suivants:{ "userId":"1","username":"abc" }
et urllocalhost/index.php?userId=1&username=abc
.OriginalL'auteur Atul Gupta