繁体   English   中英

如何打开 url 需要用户名和密码 uiwebview?

[英]how to open url need username and password with uiwebview?

我想在 UIWebview 中打开需要密码和用户名的 URL。 比如打开我本地的Wifi路由器(192.168.1.1)。 但是当我尝试以下代码时,没有弹出 Safari 要求密码和用户名。

NSURL *url = [NSURL URLWithString:@"http://192.168.1.1"];
NSURLRequest *httpReq = [NSURLRequest requestWithURL:url];
[self._webView loadRequest:httpReq];

由于有人告诉我使用 NSURLConnectionDelegate,我知道这一点,但我不知道如何将授权页面显示给 UIWebView。

这将有助于

NSURL *url = [NSURL URLWithString:@"http://username:password@192.168.1.1"]; NSURLRequest *httpReq = [NSURLRequest requestWithURL:url]; [self._webView loadRequest:httpReq];

你需要在 NSURLConnectionDelegate 中实现 connection:didReceiveAuthenticationChallenge:。 有关详细信息,请阅读 Apple“URL 加载系统编程指南”中的身份验证挑战章节。

UIWebView 不提供任何机制来识别响应。 因此,在UIWebViewHttpStatusCodeHandling github 项目中解释了一种解决方案,该项目标识了响应的状态代码(在您的情况下应该是 404)。

但是,主要缺点是对于每个请求,您需要使用 NSURLConnection 并再次加载请求。 但在这种情况下,您也可以取消 NSURLConnection。

另一个解决方案应该(可能)是使用 Java 脚本。 搜索提供响应状态代码的 Java 脚本。

暂无
暂无

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

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