我开始计划一个网络应用程序,Backbone.js将非常适合客户端。我一直在计划在后端使用node,但这暂时是开放的。
我需要一种方法来保护前端应用程序与数据库的连接。我有discussions with others on Quora但我认为思考过程从核心问题中抽象得过于抽象。
我更喜欢通过RESTful端点访问数据,但我需要确保只有我的应用可以与API通信。我将完全控制应用程序的前端和后端。有可能在数据库周围构建其他应用程序(一年或两年),但是它们将由我开发(即不是公共API),并且这些应用程序可能会使用单独的OAuth端点。
关于应用程序的一些注释(可能有用也可能没用):
非常感谢任何关于最佳方法的建议。
答案 0 :(得分:1)
我们拥有与您完全相同的设置 - SaaS模式,多个应用程序(移动设备,网络等),当我关注您的链接时,Miguel拥有我们使用的确切解决方案。
带有时间戳并在auth上发送给客户端的令牌。我们将哈希令牌存储在用户模型中,然后我们验证该令牌的每个后续请求。
您可以使用BaseModel扩展Backbone.Model,该BaseModel通过重写Backbone.Sync将令牌附加到每个服务器请求
请参阅here,了解他们如何扩展基本视图,并将相同的内容应用于基本模型。