繁体   English   中英

UIWebView不能在iOS3.2 / iOS4上保留身份验证

[英]UIWebView does not persist authentication on iOS3.2/iOS4

我制作了一个使用UIWebView来显示使用基本身份验证的网站的应用程序。 自iOS3.2起(在iPhone和iPad上),它停止显示内容。

我对用户进行身份验证的方法是:

  1. 创建一个NSURLConnection
  2. 实现didReceiveAuthenticationChallenge以提供证书
  3. 实现didReceiveResponse以接收响应并在UIWebView中加载请求,即[webView loadRequest:]

从iOS3.2开始,身份验证就被破坏了。 UIWebView似乎不再检查共享凭据存储。

对于iPhone上的iOS4,我设法通过在URL(即https:// username:password@www.somesite.com )中包含登录信息informatino来解决此问题,该方法是将初始加载请求传递给webView。

对于iPad上的iOS3.2,这还不够。 最初的请求可以通过身份验证,但是后续的调用仍然不可以通过身份验证。

有什么建议么?

使用setDefaultCredential:forProtectionSpace :在共享的NSURLCredentialStorage上, NSURLCredentialStorage仍使用默认凭据,当您使用setCredential:forProtectionSpace时,它将不起作用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM