【问题标题】:How do I clear the browser cache programmatically on the iPhone?如何在 iPhone 上以编程方式清除浏览器缓存?
【发布时间】:2012-09-18 10:11:02
【问题描述】:

我正在为我的 iOS basecamp 客户端应用程序使用新的 Basecamp API。我希望用户能够注销和切换帐户。但我不能,因为每次我请求授权时都会使用存储在浏览器缓存中的帐户凭据。 我发现我需要刷新浏览器缓存才能做到这一点。如何清除浏览器缓存?

【问题讨论】:

  • 你是如何进行身份验证的?

标签: iphone objective-c ios api basecamp


【解决方案1】:
[[NSURLCache sharedURLCache] removeAllCachedResponses];

之后,您可以在 UIWebView 中删除任何关联的 cookie:

for(NSHTTPCookie *cookie in [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]) {

    if([[cookie domain] isEqualToString:someNSStringUrlDomain]) {

        [[NSHTTPCookieStorage sharedHTTPCookieStorage] deleteCookie:cookie];
    }
}

【讨论】:

  • @shyambhat,它只能在应用程序内使用UIWebView,还是也可以在 Mobile Safari 中使用?
  • 非常感谢 Romit 的解决方案 :)
  • 不适用于我的情况。我正在开发一个应用程序,我必须在其中获取 Outlook 用户的所有电子邮件。成功登录后,我得到所有电子邮件列表。但是当我尝试由不同的用户登录时,它会显示第一个用户数据。由于其他用户无法登录。
猜你喜欢
  • 2012-01-08
  • 1970-01-01
  • 1970-01-01
  • 2011-12-30
  • 2014-12-15
  • 2011-09-19
  • 2011-04-16
  • 2011-07-21
相关资源
最近更新 更多