Backbone模型没有正确接受对POST保存的JSON响应

时间:2015-08-21 16:51:46

标签: javascript json backbone.js express

我一直在尝试将模型保存到服务器,并希望返回ID和其他属性。但是,它似乎是接受响应作​​为字符串而不是JSON对象,只是添加整个字符串。在服务器上,我使用快速框架和express-json模块来提供JSON响应(我之前使用过,只是调用res.json(dataObject)函数的情况),所以它应该正确发送。谁能理解出了什么问题?查看照片或请询问更多信息。

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

我设法解决了这个问题。问题是响应是以纯文本形式发送的,而不是使用正确的JSON头。我需要发送"接受"请求标题,否则Express不允许我设置正确的"内容类型"响应上的标题,反过来,Backbone不会在没有这个的情况下正确地解析它。所以,如果有人感兴趣,我在Backbone模型的同步方法中将以下内容添加到我的jQuery AJAX调用的options对象中:

beforeSend: function(xhr) {
    xhr.setRequestHeader("accept", "application/json");
}