管理关联域中域的 cookie
Managing cookies for a domain in Associated Domains
使用 NSHTTPCookieStorage
我想读取和设置 Safari 也用于与应用程序链接的 Associated Domain
的全局 cookie
但是关于关联域的文档非常少,我只找到了共享凭据的文档
https://developer.apple.com/documentation/security/shared_web_credentials
webcredentials:mydomain.com
我需要的是
cookies:mydomain.com
那么如何管理 Associated Domain
的 cookie?
我认为使用当前 API 不可能做到这一点。
确实,雷达 exist 正是要求此功能。
从我在 iOS 11 中看到的情况来看,当应用程序具有域关联并尝试打开 SFSafariViewController
实例时,系统会要求用户授予许可,如果获得许可,将域的 cookie 传递给 Safari 视图控制器实例。 (在 iOS 10 中,Safari 视图控制器与 Safari 共享所有 cookie。)这种方法在 Facebook 和 Google 应用程序中使用,除此之外——它们呈现 Safari 视图控制器以获得会话令牌,他们用于后续网络访问。
编辑: 上面描述的功能似乎是由 SFAuthenticationSession
处理的。系统提示用户允许数据共享,并显示一个带有 URL 的 Safari 视图控制器。您还提供了一个 URL 方案,打开的 URL 必须使用 SSO 令牌调用该方案。
Cookies are not shared among applications in iOS.
所以无法从 Safari 访问 cookie。
要访问与特定 URL 关联的本地应用程序 cookie,请使用 this method:
func cookies(for URL: URL) -> [HTTPCookie]?
使用 NSHTTPCookieStorage
我想读取和设置 Safari 也用于与应用程序链接的 Associated Domain
的全局 cookie
但是关于关联域的文档非常少,我只找到了共享凭据的文档 https://developer.apple.com/documentation/security/shared_web_credentials
webcredentials:mydomain.com
我需要的是
cookies:mydomain.com
那么如何管理 Associated Domain
的 cookie?
我认为使用当前 API 不可能做到这一点。
确实,雷达 exist 正是要求此功能。
从我在 iOS 11 中看到的情况来看,当应用程序具有域关联并尝试打开 SFSafariViewController
实例时,系统会要求用户授予许可,如果获得许可,将域的 cookie 传递给 Safari 视图控制器实例。 (在 iOS 10 中,Safari 视图控制器与 Safari 共享所有 cookie。)这种方法在 Facebook 和 Google 应用程序中使用,除此之外——它们呈现 Safari 视图控制器以获得会话令牌,他们用于后续网络访问。
编辑: 上面描述的功能似乎是由 SFAuthenticationSession
处理的。系统提示用户允许数据共享,并显示一个带有 URL 的 Safari 视图控制器。您还提供了一个 URL 方案,打开的 URL 必须使用 SSO 令牌调用该方案。
Cookies are not shared among applications in iOS.
所以无法从 Safari 访问 cookie。
要访问与特定 URL 关联的本地应用程序 cookie,请使用 this method:
func cookies(for URL: URL) -> [HTTPCookie]?