从HTTP请求中获取JSON对象

时间:2016-01-25 11:02:11

标签: php json api post request

我认为我可能会想念一个简单易懂的东西,但我不知道在哪里寻找它。

所以我试图在基于PHP构建的网站上实施block.io API来接受比特币支付。现在Docs说所有通知事件都将使用通过POST请求推送到我的服务器的JSON对象。所以我决定进行测试BTC付款并将指定URL上的所有请求记录到我的数据库。在这里我倾向于getallheaders()

{
["Content-Type"]=>
string(16) "application/json"
["User-Agent"]=>
string(12) "Block.io/0.1"
["Accept"]=>
string(10) "text/plain"
["Authorization"]=>
string(10) "Basic Og=="
["Connection"]=>
string(5) "close"
["Host"]=>
string(17) "site.com"
["Content-Length"]=>
string(3) "462" }

但转储$_POST给了我一个空数组。转储$_SERVER$_GET也没有任何用处。 所以我的问题是如何找到在Content-Type中声明的JSON字符串?

任何建议都会有所帮助! 谢谢!

1 个答案:

答案 0 :(得分:1)

因为内容类型为application/json(不是application/x-www-form-urlencoded$inputJSON = file_get_contents('php://input');

编辑:PHP "php://input" vs $_POST

的优秀解释