我有一个 iOS 应用程序,它允许用户使用 Apple 的内置帐户/社交框架通过 Facebook 登录。
我的一个问题是,有没有办法将用户身份验证 cookie 从传递ACAccountStore
到 a UIWebView
?
这意味着,如果用户单击链接并显示内置的 Web 视图页面,他们将能够评论/喜欢/等,而无需登录 Web 视图。
谢谢,
担
我有一个 iOS 应用程序,它允许用户使用 Apple 的内置帐户/社交框架通过 Facebook 登录。
我的一个问题是,有没有办法将用户身份验证 cookie 从传递ACAccountStore
到 a UIWebView
?
这意味着,如果用户单击链接并显示内置的 Web 视图页面,他们将能够评论/喜欢/等,而无需登录 Web 视图。
谢谢,
担
我认为如果您不控制要在所述网络视图中进行身份验证的服务,那将是不可能的。
可以将任意 cookie 注入到 aUIWebView
中,如此处所述:Is it possible to set a cookie manual using sharedHTTPCookieStorage for a UIWebView? .
可以从 中检索缓存的身份验证令牌ACAccountCredential
。但 OAuth 令牌不是会话身份验证 cookie。
Facebook 就是这样做的。每当在其 iOS 客户端中打开 web 视图时,用户将在该 web 视图中自动通过 Facebook 进行身份验证。但是他们可以控制自己的服务,因此他们为他们的 iOS 客户端创建了一种机制来请求会话身份验证 cookie(然后他们将其注入到 webviews 中)。
不过,一般来说,作为第 3 方开发人员,您将无法重现该行为。当然,除非给定的服务具有满足自己需求的这种机制,并且您进行了一些逆向工程。