Safari和Webview之间是否共享cookie?

Sam*_*mir 1 cookies safari webview

根据Apple关于NSHTTPCookieStorage的文档

NSHTTPCookieStorage类提供用于管理所有应用程序共享的NSHTTPCookie对象集合的接口。

因此,如果我没记错的话,由于OS X上的Webview使用NSHTTPCookieStorage,而Safari使用Webview,因此,如果我在Webview上的给定网站上登录,则Safari将使用由Webview设置的cookie,并且网站是由Safari打开的,应该经过身份验证。

我的问题是,是否在Safari和Webview之间共享cookie。如果是这样,为什么上面的测试不起作用?

Ken*_*agh 6

根据NSHTTPCookieStorage文档:

从OS X 10.11开始,每个应用程序都有自己的sharedHTTPCookieStorage单例,不会与其他应用程序共享。

因此,虽然前一个答案在三年前写的时候是正确的,但是现在答案应该是:

1)在OS X 10.11之前-是的,它们已经共享

2)OS X 10.11和macOS 10.12-不,它们不再共享。


Jef*_*ein 5

根据了解 iPhone 的 NSHTTPCookieStorage 中的讨论,cookie 不会在应用程序之间共享。

这在“Cookie 存储”部分下的文档中得到了确认:

iOS 注意:iOS 中的应用程序不会共享 Cookie。

  • 好吧,在他的问题中,他确实说“在 OS X 上”,奇怪的是,这不是 iOS。;-) (6认同)