Javascript 保存时将值返回到BackBone.js
因此,我使用backbone.js,并试图保存一个模型。在服务器端,我为接收到的模型生成一个GUID,并返回该GUID,以便模型在客户端使用它 我的职能就是这样Javascript 保存时将值返回到BackBone.js,javascript,jquery,backbone.js,Javascript,Jquery,Backbone.js,因此,我使用backbone.js,并试图保存一个模型。在服务器端,我为接收到的模型生成一个GUID,并返回该GUID,以便模型在客户端使用它 我的职能就是这样 this.save({}, { success: function (model, response) { alert(response); }, error: function (model, respons
this.save({},
{
success: function (model, response) {
alert(response);
},
error: function (model, response) {
alert(response)
}
});
它将对象发送到服务器,并从post返回我想要的值。它返回一个(HTTP/1.1200ok
),但它调用了error函数(其中包含我正确的返回值)
你知道为什么吗
我在控制台中执行了以下操作
JSON.stringify(response)
"{"readyState":4,"responseText":"5dad212e-73bf-4e01-911a-397b81f77022","status":200,"statusText":"OK"}"
因此,它将返回200和guid,但不会触发成功。。。。我真的不想只使用error函数,因为这不是应该触发的:p
提前谢谢 查看您的
resposneText
,服务器似乎没有返回可接受的响应-不是正确的json
对象。使服务器返回如下响应:
{
"guid" : "id_to_be_returned" //,
// and other attributes to be added in the model
}
并将响应类型设置为
json
。它应该可以工作。尝试在save调用的第一个参数中显式地放入一个模型值。文档提到只保存该散列的指定属性。另外,error函数中model参数的内容是什么?添加param没有帮助。然而,您关于模型中的内容的问题很有趣。这个模型乍一看很好。然而,当我尝试JSON.stringfy(model)
时,我得到了TypeError:将循环结构转换为JSON
时,我注意到有一个属性具有循环引用,并将其设置为null,我能够将其字符串化。问题是我可以在保存模型之前对其进行字符串化,但不能在回调中对模型进行字符串化……我修复了循环引用。另一个回调在该回调完成之前启动。我将调用另一个调用的函数移回了我们正在查看的回调中(是的,令人困惑……有很多事情正在进行),现在我可以使用JSON.stringify对错误中返回的模型进行字符串化,但仍然不起作用,所以我认为这不是问题所在(但稍后会是另一个问题,谢谢!)如何从服务器端返回json
?您可以尝试一下,比如返回json{“guid”:“id\u to\u be\u returned”//,其他要添加的字段}
,并使响应类型为json
。因为返回的响应似乎有问题。啊,你100%正确!我正在从.net返回一个直接向上的GUID。我将其包装到Json()中,它工作得非常好。请指定一个答案,我不会以json格式返回数据,我会将其标记为正确谢谢!