我这样设置HTTPCookieStorage
:
let storage = HTTPCookieStorage.sharedCookieStorage(forGroupContainerIdentifier: "user100")
storage.cookieAcceptPolicy = .always
let cookieProperties: [HTTPCookiePropertyKey : Any] = [.name : "example\(Date().timeIntervalSince1970)",
.value : "value\(Date().timeIntervalSince1970)",
.domain : "www.example\([100,200,300].randomElement()!).com",
.originURL : "www.example.com",
.path : "/",
.version : "0",
.expires : Date().addingTimeInterval(2629743)
]
storage.setCookie(HTTPCookie(properties: cookieProperties)!)
我发现对
HTTPCookieStorage.shared
执行相同操作实际上会保存cookie,但此自定义HTTPCookieStorage
不是。如何使其持久化? 最佳答案
这是我的发现,forGroupContainerIdentifier
cookie的目的是在您的应用程序之间共享cookie。就像在一个应用程序中创建一个用于cookie存储的组,在另一个应用程序中一样,您想要访问该组,因此,您需要选择一个正确的组名。您需要在应用程序门户开发人员站点上创建组,并且需要在两个应用程序捆绑包ID中添加该组。之后,您将可以使用这些cookie。有关更多信息,请检查此线程。 Cookies storage