使用Postman发送POST参数不起作用,但是发送GET参数
我试图使用Chrome扩展邮差testing简单的PHP页面。 当我发送URL参数时,脚本工作正常(例如$_REQUEST
参数中可用的variables)。 当我将它们作为x-www-form-urlencoded
参数发送时, $_REQUEST
参数只包含PHPSESSID
。
剧本:
<?php var_export($_REQUEST); ?>
当我发送URL参数时, $_REQUEST
包含它们:
但是,当我将它们作为POST
variables发送时, $_REQUEST
不包含它们:
我错过了什么?
我将Postman中的url设置为http://
但是Apacheredirect到了https://
并且不知何故,POSTvariables正在被丢弃。
在将其更改为https://
,POSTvariables正常工作。
另请参阅: https : //stackoverflow.com/a/28461500/704803
PostMan和Advance REST Client都面临同样的问题。 我通过fiddler检查,发现我的请求有效载荷不转换成JSON格式。
我正在x-www-form-urlencoded中传递我的数据
您可以通过在请求头中使用Content-Type作为application / x-www-form-urlencoded来修复它。
检查标题中的内容types。 我有这个发送原始JSON和我的内容types的应用程序/ JSON在POSTMAN标题的问题。
我的PHP在请求post看到所有的杰克。 直到我更改内容types为应用程序/ x-www-form-urlencoded与RAW文本区中的JSON和它的types为JSON,我的PHP应用程序是否开始查看发布数据。 不是我在处理原始json时所期望的,而是现在为我所需要的而工作的。
只需使用“ Body Tab
并在其中inputpost parameters
。 请注意,如果select“ Get
则“ Body Tab
被禁用
教程与截图 。
我遇到了同样的问题。 要解决它,我添加了以下标题:
Content-Type: application/json
我不得不手动添加内容types,即使我在原始的后期字段参数中也有types的“json”。
编辑
当您通过x-www-form-urlencoded
发送参数时,则需要为请求设置标题,如使用Content-Type
作为application/x-www-form-urlencoded
对我来说,服务器是期待HTTPS请求,但我没有在URL中指定。 挂钩将到达服务器,但身体将是空的。
有时邮递员版本问题:
我面对同样的问题。 使用最旧版本的邮差发送数据。
那次我收到了服务器端空的json数据。
我已经解决了这个问题 ,一旦我卸载邮差的最旧版本,并安装最新版本。
有同样的问题,这是有关邮递员发送的头与我发送的数据不匹配。 正在发送表单数据和标题设置为x-www-form-urlencoded所以它显示控制器/函数中的空post数据…非常愚蠢的错误…