backbonejs入门-服务器应该返回什么

Getting started with backbonejs - what should a server return

本文关键字:返回 什么 服务器 入门 backbonejs      更新时间:2023-09-26

我对Backbone.js库完全陌生,阅读了整个文档,了解了库的工作原理。在以下情况下,服务器的响应应该是什么,以确保使用主干设计的应用程序正常工作(而不需要额外的笔划/代码)。

假设一个类似的模型

window.person = Backbone.Model.extend({
    defaults: {
        name: "",
        email: "dummy@gmail.com"
    },
    urlRoot: "PersonApp"
});
  1. 假设model.save()验证顺利,服务器应该返回什么JSON

  2. 服务器应该为model.fetch() 返回什么JSON

  3. 服务器应该为model.destroy() 返回什么JSON

如果您查看Backbone.Sync文档,它会说您应该使用服务器上更改的属性来响应请求。

因此,为了回答您的问题:

  1. model.save的JSON请求应该返回作为保存的一部分而更改的属性。在创建的情况下,这将是整个模型;在只更新已更改的字段的情况下。(或者,如果你很懒,不介意更新整个客户端模型,你可以返回整个模型)。

    因此,可以接受的响应是{ 'name' : 'a name', 'email' : 'an@email.com' }

  2. Fetch应该只返回JSON形式的模型。因此,我在model.save中使用的相同示例也可以。

  3. 我不完全确定,但我不认为Backbone会验证删除请求返回的数据,所以只要不是HTTP错误,你就应该能够返回任何内容。根据下面的@a.real.human.being,空响应也会导致错误。因此用";OK";在身体(或类似的)似乎是一个合理的计划。