php 接收 Content-Type 是 application/json的请求数据

Posted 李照耀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 接收 Content-Type 是 application/json的请求数据相关的知识,希望对你有一定的参考价值。

工作中为其他公司编写了一个提供请求的接口,自己调试的时候是用form提交的,所以可以用$_POST取键接收方式,而对接联调的时候发现总是取不到数据,把$_POST整个序列化放入日志也是[] ,空的,于是找了找原因,原来他们请求的时候把json字符串整体作为了一个字符串放入了body体中,而我因为不知道键 无法获取数据,于是找了很久,记得以前微信中有用$GLOBALS ["HTTP_RAW_POST_DATA"]来接收数据的,我用了之后发现报错,看来是环境配置不允许导致的,后来想到可以用 file_get_contents(‘php://input‘) 来获取数据,于是马上修改了一下,果然拿到了数据

以上是关于php 接收 Content-Type 是 application/json的请求数据的主要内容,如果未能解决你的问题,请参考以下文章

原生PHP接收$_POST的几种方式

PHP使用CURL设置header头传参以及设置Content-Type: application/json类型的后台数据接收

php接口无法接收小程序post请求的数据

PHP配置请求头允许跨域拦截OPTIONS请求接收POST请求参数

PHP配置请求头允许跨域拦截OPTIONS请求接收POST请求参数

在 PHP 中接收多部分 POST 数据请求