Backbone.js:奇怪的.save()错误回调

Ali*_*Ali 1 javascript php json backbone.js

我从.save()函数中得到错误响应.服务器端php返回一个文本并成功将url保存到数据库中.当我检查响应时,我可以看到PHP返回的文本,但是我不明白为什么它会转入错误回调.可能是什么原因?

urlToAdd.save({}, {
    success: function () {
        console.log("In here");
    },
    error: function (model, response) {
        console.log(model.toJSON());
        console.log(response);
        console.log("Not in here");
    }
});
Run Code Online (Sandbox Code Playgroud)

服务器响应:

HTTP/1.1 200 OK
Date: Sat, 19 May 2012 21:31:27 GMT
Server: Apache/2.2.21 (Unix) mod_ssl/2.2.21 OpenSSL/0.9.8r DAV/2 PHP/5.3.6
X-Powered-By: PHP/5.3.6
Content-Length: 96
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html
X-Pad: avoid browser bug
Run Code Online (Sandbox Code Playgroud)

Bre*_*mpa 5

嗯......尽管响应是有效的,但内容类型告诉了整个故事...预期的内容类型应该是application/json.如果您的响应不是JSON,则每次都会调用错误.如果您有办法将响应编码为JSON,则应该看到调用成功而不是错误.