PHP获取不到前端的数据

下图为前端发送的请求
1584428069(1).jpg
后台代码为
1584428041(1).jpg
服务器返回

Notice: Undefined index: mes in C:xampphtdocs1.php on line 9

NULL
但是直接在地址栏赋值是正常的
1584428016(1).jpg

1584432144(1).jpg

阅读 3.5k
4 个回答

看看前端请求的头部,Content-Type 是否是application/json方式。
REQUEST数组包含GET、POST、COOKIE, 而POST数组是HTTP POST 请求的 Content-Type 是application/x-www-form-urlencoded 或 multipart/form-data 时,会将变量以关联数组形式传入当前脚本。

$data = file_get_contents("php://input"); // 可以获取application/json
echo $data;

因为前端传递的是 json 对象,此时的 Content-Type: application/json ,超全局变量 $_POST 是接收不到的,需要使用。

echo file_get_contents('php://input');

来获取,然后 json_decode 。

也可以使用 jQuery 的 $.param 方法或者 qs 包的 qs.stringify 方法来转换对象,$_POST 就能收到了

你这样打印:
var_dump($_REQUET);

有跨域么?有跨域的话试着按我这篇博客 《解决跨域问题笔记》 调试一下。

另外需要补充 network 和 console 的截图。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题