I'm trying to test a simple PHP page using the Chrome extension Postman. When I send URL parameters, the script works fine (eg the variables are available in the $_REQUEST
parameter). When I send them as x-www-form-urlencoded
parameters, the $_REQUEST
parameter only contains the PHPSESSID
.
The script:
<?php
var_export($_REQUEST);
?>
When I send URL parameters, $_REQUEST
includes them:
But when I send them as POST
variables, $_REQUEST
doesn't include them:
What am I missing?
Right-click selected text, and choose EncodeURIComponent to manually encode a parameter value. To send a path parameter, enter the parameter name into the URL field, after a colon, for example :id . When you enter a path parameter, Postman will populate it in the Params tab, where you can also edit it.
In a POST request, the parameters are sent as a body of the request, after the headers. To do a POST with HttpURLConnection, you need to write the parameters to the connection after you have opened the connection.
Enter the same URL in the Postman text field; you will get the multiple parameters in the Params tab. Even you can write each of the parameters and send a request with multiple parameters.
I was setting the url in Postman to be http://
but Apache was redirecting to https://
and somehow the POST variables were being dropped along the way.
After I changed it to https://
, the POST variables worked properly.
See also: https://stackoverflow.com/a/28461500/704803
I faced the same issue in PostMan and Advance REST Client both. I checked through fiddler and found that my request payload is not converted into JSON format.
I am passing my data in Body as x-www-form-urlencoded
You can fix it by using Content-Type as application/x-www-form-urlencoded in request header.
Simply use the Body Tab
and enter the post parameters
there. Note that Body Tab
is disabled if Get
is selected.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With