2

我正在开发一个应该为多个用户服务的 Backbone 应用程序。

我在后端使用 Spring 和它的安全模块,它使用基本身份验证来允许按 url 模式进行访问。

所以假设有两个用户,Jack 和 Joe,以及一个名为“item”的资源。由于http认证,双方都看不到对方的物品。假设网址是:

  • /用户/杰克/项目
  • /用户/约翰/项目

如何在 Backbone 中识别用户?有什么聪明的方法可以做到这一点,还是我应该从 http 标头中选择用户名并将其注入 url?

4

1 回答 1

1

Backbone 在 sync() 期间本机使用 ID 进行 REST 调用。您现在需要做的就是为模型提供自定义 URL:

var Item = Backbone.Model.extend({
  url: function() {
    return '/users/'+this.get('name')+'/item';
  }
});

尽管在这种情况下,您必须先加载 User 模型,然后才能对其调用 sync(),例如,通过 Collection 从像“/users/”这样的 URL 中添加它们。

于 2012-06-25T18:52:11.887 回答