it-swarm.com.de

Senden POST Parameter mit Postman funktionieren nicht, aber das Senden von GET-Parametern funktioniert

Ich versuche, eine einfache PHP - Seite mit der Chrome-Erweiterung Postman zu testen. Wenn ich URL-Parameter sende, funktioniert das Skript einwandfrei (z. B. sind die Variablen im Parameter $_REQUEST verfügbar). Wenn ich sie als x-www-form-urlencoded-Parameter sende, enthält der $_REQUEST-Parameter nur die PHPSESSID.

Das Skript:

<?php
var_export($_REQUEST);
?>

Wenn ich URL-Parameter sende, enthält $_REQUEST diese: URL parameters

Wenn ich sie jedoch alsPOSTvariables sende, enthält $_REQUEST sie nicht: enter image description here

Was vermisse ich?

54
whiterook6

Ich habe die URL in Postman auf http:// gesetzt, aber Apache hat zu https:// umgeleitet, und irgendwie wurden die Variablen POST auf dem Weg weggelassen.

Nachdem ich es in https:// geändert hatte, funktionierten die POST - Variablen ordnungsgemäß.

Siehe auch: https://stackoverflow.com/a/28461500/704803

43
andrewtweber

In PostMan und Advance REST Client hatte ich beide das gleiche Problem. Ich habe Fiddler überprüft und festgestellt, dass meine Anforderungsnutzdaten nicht in das JSON-Format konvertiert werden.

Ich gebe meine Daten in Body as weiter x-www-form-urlencoded enter image description here

Sie können es beheben, indem Sie verwenden Inhaltstyp wie application/x-www-form-urlencoded im Anforderungsheader .  enter image description here

69
Arvind Dhasmana

Verwenden Sie einfach den Body Tab und geben Sie dort den post parameters ein. Beachten Sie, dass Body Tab deaktiviert ist, wenn Get ausgewählt ist.

Tutorial mit Screenshots .

17
AndroidLearner

Überprüfen Sie Ihren Inhaltstyp in der Kopfzeile. Ich hatte Probleme mit dem Senden von rohem JSON und meinem Inhaltstyp als application/json in der POSTMAN-Kopfzeile.

mein PHP sah Jack alle im Request Post. Erst als ich den Inhaltstyp in Application/x-www-form-urlencoded mit der JSON im RAW-Textbereich und seinem Typ als JSON änderte, begann meine Anwendung PHP, den Post zu sehen Daten. nicht das, was ich erwartet hatte, als ich mit rohem Json zu tun hatte, aber es funktioniert jetzt für das, was ich brauche.

postman POST request

12
mushcraft

Bearbeiten

Wenn Sie Parameter mit x-www-form-urlencoded senden, müssen Sie den Header für die Anforderung so einstellen, dass Content-Type als application/x-www-form-urlencoded verwendet wird.

5
Satish Shinde

Ich hatte das gleiche Problem. Um das Problem zu beheben, habe ich folgende Header hinzugefügt:

Content-Type: application/json

Ich musste den Inhaltstyp manuell hinzufügen, obwohl ich auch den Typ "Json" in den rohen Postfeld-Parametern hatte.

3
John O'Connor

Es tut uns leid, wenn dies der Thread Necromancy ist, aber dies ist auch heute noch relevant, insbesondere bei der Anzahl der verwendeten APIs!

Ein Problem, das ich hatte, war: Ich wusste nicht, dass Sie in der Spalte 'Key' Folgendes angeben müssen: 'Content-Type'; Ich dachte, dies sei ein Benutzerschlüssel für den Zeitpunkt, zu dem er in der Anfrage zurückkam, was er nicht ist. 

Etwas so einfaches könnte Ihnen dabei helfen, ich denke Postman könnte diese Kolumne besser formulieren, weil ich die Dokumentation nicht einmal lesen musste, wenn es um die Verwendung von Fiddler ging. während ich mit Postman tat.

 Postman picture

0
Lee

Für mich erwartete der Server HTTPS-Anfragen, aber dies wurde in der URL nicht angegeben. Der Haken würde den Server erreichen, der Körper wäre jedoch leer. 

0
user2229618

Manchmal Versionsproblem in 'Postman':

Ich habe das gleiche Problem. Beim Senden der Daten mit der ältesten Version des Postboten.
Zu dieser Zeit habe ich die leeren Json-Daten auf der Serverseite erhalten.
Und Ich habe dieses Problem behoben , Sobald ich die älteste Version von Postman deinstalliere und mit der neuesten Version installiere. 

0
Mohammed Yasin