php – 如何访问post变量($_POST为空)
我正在研究一个系统,目前正在尝试实现另一个(外部)系统可以发布到某些数据的脚本,以便我可以存储它们.
我无法控制外部系统 – 我可以触发它将数据发布到我的系统,给它我的脚本的URL. 当帖子发生时看着firebug,我可以看到发布的数据,看起来像这样: 或(urldecoded) content={"sex":"male","person":{"name":["chris"],"mbox":["mailto:name.lastename@gmail.com"]}} &Content-Type=application/json &auth=DDE233H76BGN 我的问题是,当我尝试在我的脚本中获取这些参数时,$_POST(和$_REQUEST)始终为空! 我在这里错过了什么? 编辑: <?php var_dump($_POST); ?> 要么 <?php echo file_get_contents("php://input"); ?> 他们两个都绝对没有给我:s 解决方法
应使用$arr = json_decode($_ POST [‘content’])访问数据; ……但你这里有另一个问题.
缺少一个细节: … firebug如何能够向您显示从外部系统发送到您网站的$_POST的内容(也就是说:请求不通过您的浏览器,但可能通过源自外部服务器的CURL请求).显然,我在这里得不到什么. 我看到的是您的浏览器发送的POST请求(在javascript中),由您的网站制作. 暗示: 尝试进行回声“测试”;就在你的var_dump之前,我觉得你可能没有调试我们在Firebug中看到的Ajax POST请求真正调用的页面.有点路由问题? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |