为了账号安全,请及时绑定邮箱和手机立即绑定

从PHP中的JSON POST读取HTTP请求正文的问题

从PHP中的JSON POST读取HTTP请求正文的问题

PHP
至尊宝的传说 2019-09-03 16:27:25
我正在编写一个注册为webhook端点的脚本。我知道它已成功注册,因为我正在将每个请求的标头写入我的服务器日志。这是一个示例:Content-Type: text/xml; charset=UTF-8User-Agent: Jakarta Commons-HttpClient/3.1Host: =={obfuscated}== Content-Length: 1918我注册的API是将JSON对象发布到我的脚本,我想使用PHP解析该对象。正如您从请求标头中看到的那样,有一个很好的大胖JSON对象等待解析。这似乎很简单,但事实并非如此。起初我尝试使用$_POST['json']或只是$_POST因为数据不在数组中,我真的不确定如何访问它。我尝试过使用file_get_contents('php://input')和fopen('php://input', 'r')不使用json_decode()但没有运气。我无法使用,http_get_request_body()因为我所使用的服务器没有PECL,这是我无法控制的。有没有其他方法可以与我错过的POST-ed JSON对象进行交互?谢谢!
查看完整描述

3 回答

?
倚天杖

TA贡献1828条经验 获得超3个赞

感谢其他人的投入。事实证明,我只是需要


$inputJSON = file_get_contents('php://input');

$input = json_decode($inputJSON, TRUE); //convert JSON into array

其中第二个参数json_decode将对象作为数组返回。


希望这有助于其他人!


查看完整回答
反对 回复 2019-09-03
  • 3 回答
  • 0 关注
  • 573 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信