Ios 移动应用:持久登录(两种认证方式)
我正在设计一款具有以下功能的移动应用程序:Ios 移动应用:持久登录(两种认证方式),ios,facebook,web-services,authentication,mobile,Ios,Facebook,Web Services,Authentication,Mobile,我正在设计一款具有以下功能的移动应用程序: 用户第一次打开应用程序时,会被要求通过使用经典用户名/密码模式登录或使用Facebook登录,对应用程序web服务进行身份验证 然后,下次打开应用程序时,用户将不必再次输入其凭据,并自动登录 实现了第一种认证方法。web服务发回一个身份验证令牌,用户使用该令牌对自己进行身份验证。后者与用户ID一起存储在移动设备的非易失性(受保护)存储器中 我知道很多应用程序都提供了我们正在讨论的两种身份验证方法。我想知道它通常是如何与Facebook认证相结合的。目前
你认为它可行吗?Facebook访问令牌有两种类型:短期和长期。你可能玩过短期的,但Facebook的文档说,通常移动应用使用长期的 使用Facebook的SDK的本地移动应用程序将获得长期访问令牌,有效期约为60天。当使用你的应用程序的人向Facebook的服务器发出请求时,这些代币将每天刷新一次。如果没有请求,令牌将在大约60天后过期,用户必须再次通过登录流才能获得新令牌 iOS Facebook SDK有一个关于维护会话的示例,该示例将在捆绑包的安装包中提供。(GitHub上也有相同的代码。)以下是GitHub中最重要的部分:
SLAppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];
if (!appDelegate.session.isOpen) {
// Open new session
}
使用isOpen
还原/发现会话处于活动状态后,示例中没有代码行可用于刷新会话。我不是一个iOS程序员,但对我来说,引用了文档中的一段和教程中的代码片段,我清楚地认为,甚至不需要其他刷新操作,只需要在大约60天内成功使用
简而言之,你不可能拥有一个永久的代币,但幸运的是,如果你能让你的用户以足够频繁的方式使用该应用程序,你几乎拥有了一个永久的代币
[1] [2]
[3]Facebook访问令牌有两种类型:短期和长期。你可能玩过短期的,但Facebook的文档说,通常移动应用使用长期的 使用Facebook的SDK的本地移动应用程序将获得长期访问令牌,有效期约为60天。当使用你的应用程序的人向Facebook的服务器发出请求时,这些代币将每天刷新一次。如果没有请求,令牌将在大约60天后过期,用户必须再次通过登录流才能获得新令牌 iOS Facebook SDK有一个关于维护会话的示例,该示例将在捆绑包的安装包中提供。(GitHub上也有相同的代码。)以下是GitHub中最重要的部分:
SLAppDelegate *appDelegate = [[UIApplication sharedApplication]delegate];
if (!appDelegate.session.isOpen) {
// Open new session
}
使用isOpen
还原/发现会话处于活动状态后,示例中没有代码行可用于刷新会话。我不是一个iOS程序员,但对我来说,引用了文档中的一段和教程中的代码片段,我清楚地认为,甚至不需要其他刷新操作,只需要在大约60天内成功使用
简而言之,你不可能拥有一个永久的代币,但幸运的是,如果你能让你的用户以足够频繁的方式使用该应用程序,你几乎拥有了一个永久的代币
[1] [2]
[3]