重定向跳转引起的 PHP $_Post 和 php://input 数据为空

更新日期: 2019-11-11 阅读次数: 4444 字数: 181 分类: PHP

今天在 ThinkPHP 下测试获取 HTTP 请求 POST 数据时,发现无论怎么测试,都获取不到 POST 的数据。

  • $_POST 为空
  • php://input 也为空

但是在另外一台服务器上测试,却是正常可以获取到的。

查了半天没有找到问题,好不容易找到一个 Google 的结果,发现确实由于链接跳转引起的问题。

例如:

我测试时,是向 http://www.sunzhongwei.com/api 发送 POST 请求,而实际上 http 的请求会我设置的 nginx 自动重定向到 https 的链接 https://www.sunzhongwei.com/api。这种情况下,php://input 始终获取不到数据。

修改成重定向后的链接,就一切正常了。。。

关于作者 🌱

我是来自山东烟台的一名开发者,有敢兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式