如何在Cocoa应用程序中删除WebView存储的cookie?

时间:2010-11-02 19:09:51

标签: cocoa cookies webkit

我的Cocoa应用使用WebView打开使用Cookie的网页。出于测试目的,我想删除这些cookie。我该怎么做(以编程方式或手动方式)?

2 个答案:

答案 0 :(得分:6)

如果您想以编程方式执行此操作,可以使用NSHTTPCookieStorage

您需要cookiesForURL:deleteCookie:。有点像这样(未经测试):

NSHTTPCookieStorage *cookieJar = [NSHTTPCookieStorage sharedHTTPCookieStorage];

for (NSHTTPCookie *cookie in [cookieJar cookiesForURL:@"http://myserver.com"]) 
{
  [cookieJar deleteCookie:cookie];
}

答案 1 :(得分:3)

最初,在Mac OS X上的应用程序之间共享Cookie。因此您可以使用Safari首选项删除所有Cookie。

但是,从OS X 10.11开始,该潜在的安全漏洞已经关闭,所有应用程序都有自己的cookie存储。 (甚至在此之前,沙盒应用程序也有自己的cookie存储区)