Thinkphp3.2.3 接收不到json数据

1.使用Thinkphp3.2.3,用来做APP的接口开发,但是在用POSTMAN模拟提交数据的时候I方法和$_POST都获取不到json数据,只能使用

file_get_contents('php://input')

来接收到数据.
请问有什么其他办法解决嘛?

图片描述

图片描述

阅读 9k
3 个回答

POST JSON 的话,因该 'Content-Type: application/json; charset=utf-8',

由于PHP默认只识别application/x-www.form-urlencoded标准的数据类型,因此,对型如text/json的内容无法解析为$_POST数组,故保留原型,交给$GLOBALS['HTTP_RAW_POST_DATA'] 来接收。

php://input 允许读取 POST 的原始数据。和 $GLOBALS['HTTP_RAW_POST_DATA'] 比起来,它给内存带来的压力较小,并且不需要任何特殊的 php.ini 设置。php://input 不能用于 enctype="multipart/form-data"。

你怎么知道你没接收到数据?

$resdata = json_decode(file_get_contents('php://input'), true);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏