在调用Save()之后,Backbone.js'Model'期望从服务器返回什么?

Chr*_*row 4 javascript rest backbone.js

在调用之后,Backbone.js'Model'期望从服务器返回Save()什么?

我问的原因是因为我在调用之后模型被清除了Save().我摆弄了模型的parse()方法.我发现返回一个空对象或null没有产生这种行为.但是,服务器返回一些JSON作为"成功"消息,这些信息似乎覆盖了模型:

{
    message: 'SUCCESS'
}
Run Code Online (Sandbox Code Playgroud)

服务器响应Save()来自Backbone 的请求的"正确"方式是model什么?

谢谢!

Der*_*ley 10

服务器应该响应HTTP状态200,最有可能,并且应该返回服务器为模型生成或更新的任何数据.通常,这只是模型的服务器生成id字段.从服务器返回的任何字段都将应用于模型.所以如果你把它发送到服务器:


{
  foo: "bar"
}
Run Code Online (Sandbox Code Playgroud)

和服务器响应:


{
  id: 1, // or some other server generated ID, from a database, etc.
  message: "SUCCESS"
}
Run Code Online (Sandbox Code Playgroud)

你的模型最终看起来像这样:


{
  id: 1,
  foo: "bar",
  message: "SUCCESS"
}
Run Code Online (Sandbox Code Playgroud)

如果在调用save方法时模型不需要从服务器更新任何数据,则应返回空{}对象文字.