使用Sencha Touch或ExtJS进行基本身份验证

时间:2013-11-19 03:40:22

标签: authentication extjs sencha-touch-2.1

所以我有一个用户模型和用户存储。当用户进行身份验证时,如何最好地管理此经过身份验证的用户的生命周期?我目前的做法是: 1.我有一个所有用户的商店(“UsersStore”),其模型为“用户” 2.我为经过身份验证的用户提供了第二个商店(“AuthenticatedUsersStore”),其模型为“AuthenticatedUser” 3.它们都有单独的REST端点。

这看起来像一个混乱的方法,但我更容易让经过身份验证的用户和其他用户分开并单独查询等等。但是,我很确定有一个更优雅的方式来处理这只有一个模型和一个存储。

有人可以指出我正确的方向吗?任何帮助深表感谢!谢谢!

1 个答案:

答案 0 :(得分:0)

我通常在应用程序上实现的用户身份验证模型是应用程序的当前用户在成功向后端提供凭据之前没有身份。这通常通过登录表单(电子邮件/密码)完成。

当服务器成功响应时,它会在cookie中设置自己的身份验证信息,并且通常还会返回有关应用程序所需用户的信息。这些信息就是我放入模型和/或商店的信息。根据我是否实现了后端或其他人,我可以手动填充模型/商店,也可以自动生成。

我没有看到它为您在客户端或服务器上维护未经身份验证的用户存储的目的。鉴于IP地址和HTTP标头的某种组合,您可以做的最好的事情是,鉴于代理如何工作,这可能导致所有类型的错误。

话虽如此,如果它为某些目的服务于尝试为未经过身份验证的人维护用户身份,我认为您的两个商店/模型方法实际上是正确的。经过身份验证和未经身份验证的用户是两个非常不同的东西。它们可以从相同的基类模型继承,但这就是我要去的。