OStack程序员社区-中国程序员成长平台

标题: ios - 如何在 UIWebView 中显示本地网络 url 的身份验证质询? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 05:07
标题: ios - 如何在 UIWebView 中显示本地网络 url 的身份验证质询?

我正在尝试通过 UIWebView 访问安全的本地网络 URL。当我通过 safari 访问它时,我收到了身份验证质询,但同样没有出现在应用程序的 UIWebView 中。我怎样才能让它出现?

例如http://292.168.1.54/TestWeb/Test.pdf

这个 url 在 safari 浏览器中工作,但相同的 url 没有出现在我的 UIWebView 中。

任何指针、示例代码或链接都会非常有帮助。非常感谢。



Best Answer-推荐答案


有两种方法可以进行身份​​验证(在您的情况下可能是基本身份验证)挑战。

  1. -[UIWebViewDelegate webView:shouldStartLoadWithRequest:navigationType:] 会给你请求。现在,您只需对同一 URL 发起第二个请求并使用 [NSURLConnectionDelegate connection:willSendRequestForAuthenticationChallenge:] 来获取挑战。然后显示一个对话框并要求用户提供凭据。将凭据保存在 NSURLCredentialStorage 中,然后重新加载页面。

  2. Create a subclass of NSURLProtocol处理http和https。类似于 this answer并在那里获得身份验证挑战。

关于ios - 如何在 UIWebView 中显示本地网络 url 的身份验证质询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28238465/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4