我一直在尝试将模型保存到服务器,并希望返回ID和其他属性。但是,它似乎是接受响应作为字符串而不是JSON对象,只是添加整个字符串。在服务器上,我使用快速框架和express-json模块来提供JSON响应(我之前使用过,只是调用res.json(dataObject)
函数的情况),所以它应该正确发送。谁能理解出了什么问题?查看照片或请询问更多信息。
答案 0 :(得分:0)
我设法解决了这个问题。问题是响应是以纯文本形式发送的,而不是使用正确的JSON头。我需要发送"接受"请求标题,否则Express不允许我设置正确的"内容类型"响应上的标题,反过来,Backbone不会在没有这个的情况下正确地解析它。所以,如果有人感兴趣,我在Backbone模型的同步方法中将以下内容添加到我的jQuery AJAX调用的options对象中:
beforeSend: function(xhr) {
xhr.setRequestHeader("accept", "application/json");
}