我需要一个退出按钮用于我的应用程序,我有以下代码:
while ([[[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies] count] != 0) {
for (NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) {
[[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
}
}
(while 循环只是为了确保它们被删除,但它只运行一次)
如果我在上面的代码后使用 NSLog 输出共享 cookie 存储的描述,则输出为空数组。然而,当我终止应用程序或仅关闭它,然后在应用程序启动后立即使用 NSLog 输出共享 cookie 存储的描述时,所有 cookie 仍然存在。
我尝试在 for 循环中将 Cookie
设置为 nil,甚至尝试向 cookies 发送 dealloc(我知道你不应该这样做,但我现在正在尝试任何事情)。
NSLog(@"%@", [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]);
来转储 cookie。然后执行了你的代码。重新启动后,cookie 不见了。奇怪! - Nick Weaver