web-dev-qa-db-fra.com

Envoi des paramètres de requête GET dans le corps

J'ai une API qui accepte de nombreux paramètres. Passer les valeurs des paramètres dépassera la longueur de l'en-tête url.

J'utilise le client postier pour passer les paramètres dans le corps, mais cela ne fonctionne pas, aucune idée sur la façon de faire fonctionner cela.

L'API accepte de nombreux paramètres car le backend est hérité et est exposé en tant qu'API par un bus de service.

13
jhon.smith

Postman ne vous autorise pas à envoyer des données body avec une demande get.

Cependant, si votre serveur reçoit des données sous forme de paramètres d'URL, vous ne pourrez pas simplement changer la façon de les envoyer et les inclure au corps (le serveur ne les acceptera pas).

Donc, si la longueur des paramètres est vraiment si importante et que le serveur peut effectivement recevoir les mêmes données de body au lieu de paramètres, Postman n’est tout simplement pas l’outil que vous pouvez utiliser (peut-être que cURL est fait pour vous).

Si votre serveur permet d'envoyer des données uniquement en tant que paramètres d'URL et qu'elles sont si longues (plus de 2000 caractères Quelle est la longueur maximale d'une URL dans différents navigateurs? ), je pense que vous n'avez aucune chance de tester cette API.

17
Denis Koreyba

Solution de contournement:

  1. Changez le type de requête en POST.
  2. Définir la valeur de votre corps
  3. Changer le type de demande en GET
  4. Envoyer la demande et le corps est inclus
13
Steve Mullin

Postman a déjà ajouté cette fonctionnalité d’envoi du corps à la demande et obtenir .

enter image description here

Mais je recommande quand même d'aller après la demande (si le corps est présent) car de nombreux projets comme angular http client n'a pas encore mis à jour les protocoles.

2
Mark Macneil Bikeio