【发布时间】:2015-09-27 12:50:39
【问题描述】:
我正在使用 Backbone、PHP(5.6) 和 Apache(2.4)。
问题:使用 Backbone 的 model.save() 发布数据时,服务器上的 $_POST 数组为空。
我知道解决此问题的不同方法。
客户端方式: 将 Backbone.emulateJSON 设置为 true 或更改 Backbone 源。
服务器方式: 读取原始正文而不是$_POST。
这些工作,但他们感觉像黑客,事实上他们最终有点不方便。
另外,Backbone 的文档说:
如果您正在使用无法处理编码为 application/json 的请求的旧版 Web 服务器,请设置 Backbone.emulateJSON = true;会[修复它]。
所以这听起来像是服务器问题。如何使我的服务器成为非旧版服务器?
【问题讨论】:
-
这是因为您无法处理 PUT 和 DELETE 方法吗?可能重复stackoverflow.com/questions/9816274/…
-
谢谢,但我不相信这有关系。
-
你检查 $_SERVER['REQUEST_METHOD'] 了吗?如果不是 POST,我认为不会填充 $_POST。
-
@galki PHP 中没有内置方法可以访问 JSON 帖子(除了读取原始数据)。要么使用像 Symfony 这样的库/框架来完成工作,要么推出自己的解决方案stackoverflow.com/questions/10930789/…
标签: php ajax json backbone.js