WKWebsiteDataStore 与 HTTPCookieStorage

WKWebsiteDataStore vs HTTPCookieStorage

WKWebsiteDataStore.default().httpCookieStore.getAllCookies returns 与 HTTPCookieStorage.shared.cookies 不同的 cookie 列表。这两种方法有什么区别?

HTTPCookieStorage.shared 将与 URLSession.shared 网络请求一起使用。

WKWebsiteDataStore.default() 仅用于 WKWebViewgetAllCookies 是异步的

两者都很执着。

接受的答案并不完全正确。持久性 cookie 在 HTTPCookieStorage.sharedWKWebsiteDataStore.default() 之间共享,但共享并不总是即时的。不共享会话 cookie。 Apple 似乎没有在任何地方记录这种行为,但如果您 运行 进行一些测试,就会很明显。有关一些相关讨论,请参阅此长线程: