在我的应用程序中,我有一个UIWebview
加载linkedin auth页面进行登录。用户登录时,cookie会保存到应用程序中。如何删除UIWebView的所有cookie?
我的应用程序有一个与linkedin登录无关的注销按钮。所以当用户点击这个按钮时,他从应用程序中注销。我希望这个注销会从应用程序中清除他的linkedin cookies,以便用户完全注销。
在我的应用程序中,我有一个UIWebview
加载linkedin auth页面进行登录。用户登录时,cookie会保存到应用程序中。如何删除UIWebView的所有cookie?
我的应用程序有一个与linkedin登录无关的注销按钮。所以当用户点击这个按钮时,他从应用程序中注销。我希望这个注销会从应用程序中清除他的linkedin cookies,以便用户完全注销。
据this question,你可以通过每个cookie中的“饼干罐”,并删除它们,就像这样:
NSHTTPCookieStorage *storage = [NSHTTPCookieStorage sharedHTTPCookieStorage];
for (NSHTTPCookie *cookie in [storage cookies]) {
[storage deleteCookie:cookie];
}
[[NSUserDefaults standardUserDefaults] synchronize];
你可以做的WebView的HTML,其清洁饼干里面的函数。
如果您只需要进行一次清洁操作,只需在Titanium事件中触发此功能,只有在应用程序启动时才能完成。
只是想补充一些关于这方面的信息。
在OS X 10.9/的iOS 7及更高版本,可以使用-resetWithCompletionHandler:清除cookies和整个应用程序的高速缓存等从sharedSession
:
清空所有的cookies,缓存和凭证存储,删除磁盘文件, 将进行中的下载刷新到磁盘,并确保未来 请求在新套接字上发生。
[[NSURLSession sharedSession] resetWithCompletionHandler:^{
// Do something once it's done.
}];
的for-in循环与deleteCookie:
听起来像修改,同时枚举集合给我。 (不知道,可能是一个坏主意?)
是它工作,非常感谢 – 2010-12-18 05:52:44
不工作的IOS> = 4.0 – Ishu 2011-06-02 06:25:30
@Felipe找到一个临时办法,需要删除cookies在用户加载应用,如果你退出上次。 – Ishu 2011-06-02 07:38:10