不能通过application/json获取POST数据


not getting POST data with application/json

我使用的是Backbone, PHP(5.6)和Apache(2.4)。

问题:当使用Backbone的model.save()发送数据时,服务器上的$_POST数组为空。

我知道有不同的方法来解决这个问题。

客户端方式: setting Backbone。emulateJSON为true或更改骨干源。
服务器方式:读取原始正文而不是$_POST.

这些工作,但他们感觉像黑客,事实上,他们最终有点不方便。
同时,Backbone的文档说:

如果你使用的是不能处理以application/json编码的请求的旧web服务器,设置Backbone。emulateJSON = true;我会[修理它].

听起来像是服务器的问题。如何使我的服务器非遗留服务器?

多亏了这些评论,我意识到这是正确的行为。

$_POST用于表单数据,而json数据(application/json)应该从原始输入中获取。