3

许多应用程序让用户保持登录状态,直到用户手动注销,如 facebook、Dropbox 等。

我想知道他们是如何实现的?可能有几种方法:

1)他们是否将用户名和密码存储在本地存储中,并在长时间再次打开应用程序时自动登录用户?

2)或者他们是否从服务器获得了一个长期存在的令牌,一旦用户第一次登录,应用程序就会从服务器获得一个令牌,后来他们只使用这个令牌?在用户手动从应用程序注销之前,令牌将一直有效。

对于#1,它仅适用于本机登录,如果应用程序支持“使用 facebook 或 twitter 登录”,它将无法正常工作。

所以我只想了解人们是如何实现这个功能的?有文章讨论吗?

4

1 回答 1

1

Facebook 和 Twitter 等大多数服务都使用 OAuth 来管理用户会话。

我使用这个外部框架...... https://github.com/nxtbgthng/OAuth2Client

我花了一些时间阅读和设置才能正确,但现在可以了。

当用户登录时,他们会获得一个包含到期日期的身份验证令牌。当到期日期到来时,系统会自动刷新令牌。

当我向服务器发送请求时,我通过 OAuth 框架发送它,它会自动添加授权。

于 2012-10-10T22:34:08.797 回答