gpt4 book ai didi

javascript - 如何以 NO-RESTful 方式使用 Backbone.js?

转载 作者:可可西里 更新时间:2023-11-01 01:17:39 25 4
gpt4 key购买 nike

我现在是一名前端开发人员,我有一个项目可以使用BackboneJS,而服务器端是别人写的。有没有人可以告诉我如何以非 RESTful 方式覆盖删除、更新、添加等操作?服务器端的 URL 可能是这样的:

  • 添加:www.domain.com/addBookById
  • 删除:www.domain.com/removeBookById

非常感谢!!

最佳答案

主干使用Backbone.sync管理与服务器的所有通信。 sync 对您来说有两件重要的事情;首先,它看起来像这样:

The method signature of Backbone.sync is sync(method, model, [options])

  • method – the CRUD method ("create", "read", "update", or "delete")
  • model – the model to be saved (or collection to be read)
  • options – success and error callbacks, and all other jQuery request options

第二个是您可以在每个模型和每个集合的基础上覆盖 sync。因此,您可以将自己的 sync 实现添加到您的模型中:

var M = Backbone.Model.extend({
sync: function(method, model, options) {
//...
},
//...
});

如果您查看 method,您可以决定使用哪个 URL 以及您是否正在执行 GET、POST 等请求。 model 会告诉您要向服务器发送哪些数据。您需要将 options 合并到要使用的 $.ajax 选项中。看一下 Backbone.sync 的标准实现,它非常简单明了,应该会告诉您需要做什么:只需替换 URL 处理并删除一些您不关心的功能关于(例如 emulateHTTPemulateJSON)。

关于javascript - 如何以 NO-RESTful 方式使用 Backbone.js?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13465645/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com