如何删除UIWebView的所有cookie?
在我的应用程序中,我有一个 UIWebview
加载 linkedin 身份验证页面以进行登录。当用户登录时,cookie 会保存到应用程序中。
我的应用程序有一个与 linkedin 登录无关的注销按钮。因此,当用户单击此按钮时,他将从应用程序注销。我希望此注销也会从应用程序中清除他的 linkedin cookie,以便用户完全注销。
In my application, I have a UIWebview
that loads linkedin auth page for login. When user logs in, cookies saves into the application.
My app has a logout button that is not related to linkedin login. So when user clicks on this button, he logs off from the app. I want that this log off will clear his linkedin cookies also from the app, so that user will log out completely.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
根据这个问题,您可以逐一浏览cookie 在“Cookie Jar”中并删除它们,如下所示:
According to this question, you can go through each cookie in the "Cookie Jar" and delete them, like so:
只是想添加一些与此相关的信息。
在 OS X 10.9/iOS 7 及更高版本中,您可以使用 -resetWithCompletionHandler: 从您的
sharedSession
中清除整个应用程序的 cookie 和缓存等:对我来说,带有
deleteCookie:
的 for-In 循环 听起来像是在枚举集合时进行修改。 (不知道,这可能是个坏主意吗?)Just wanted to add some info regarding this.
In OS X 10.9/iOS 7 and later, you can use -resetWithCompletionHandler: to clear the cookies and cache etc. of the whole app from your
sharedSession
:The for-In loop with
deleteCookie:
sounds like modifying while enumerating a collection to me. (Don't know, could be a bad idea?)您可以在 WebView 的 html 中创建一个函数来清除 cookie。
如果您只需要一次清洁,则可以使用 Titanium 事件触发此功能,仅在应用程序启动时进行。
You could make a function inside the html of the WebView, that cleans the cookies.
If you need the cleaning to be done only once you could trigger this function with a Titanium event, only when the app starts.
在使用 MKWebView 的情况下,以前的答案对我没有帮助。所以,我找到了另一个解决方案:
Previous answers didn't help me in the case of using MKWebView. So, I found another solution:
如果有人正在寻找 Swift 解决方案:
If anyone is looking for Swift Solution: