关于ThinkPHP3.2框架接收不到json数据的解决办法

Posted findher

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于ThinkPHP3.2框架接收不到json数据的解决办法相关的知识,希望对你有一定的参考价值。

原因分析:

在tp框架中,我们经常使用的 I 方法是加过验证和默认的函数过滤的。所以我们接收的值当我们json_decode的时候就会出现空的字段

技术图片

那么我们是不是又会像网上说的不用 I  方法用 $_POST这样的方法接到所谓的json数据以后再用json_decode这样的方法呢?

很显然,这个方法也是卡在了$_POST那里,有时候连值的影子都没有

 

所以,我们试着用环境变量来解决:

技术图片

解释一下:这样接到的是一个对象,所以我加了一个(array)把对象转成了数组,这样才可以正确使用!!!也可以试试json_decode($json,true);

 

 

 

最后也可以试试   file_get_contents("php://input");

以上是关于关于ThinkPHP3.2框架接收不到json数据的解决办法的主要内容,如果未能解决你的问题,请参考以下文章

我用的是thinkphp3.2.3为啥使用jquery的ajax接收不到post值

为啥thinkphp3.2无法获取到json提交的数据?

ThinkPHP3.2.3下使用create函数更新数据安全使用方法

Thinkphp3.2.3关于开启DEBUG正常,关闭DEBUG就报错模版无法找到

Spring接收和响应json数据

Thinkphp3.2.3框架下封装公共的函数,例如封装CURL函数来获取接口数据