首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >iOS 5 NSURLConnection到HTTPS服务器

iOS 5 NSURLConnection到HTTPS服务器
EN

Stack Overflow用户
提问于 2012-02-03 09:58:56
回答 2查看 19.4K关注 0票数 5

我已经搜索了几个小时关于允许我连接到任何NSURLConnection服务器的HTTPS委托/方法。即使我在这个网站上搜索,我也找到了答案,答案对我来说不起作用。

我会上传代码链接,如果你们中的任何人希望我这样做。但我更喜欢一个连接到任何HTTPS Servers的简单UIWebView的教程/示例代码/源代码。我将从那里开始。

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-02-03 18:03:57

好了,我找到答案了。也感谢gamozzii对我的帮助。我根据您的代码进行了搜索:)

Load HTTPS url in a UIWebView

这对我很有效。我也尝试过像https://www.google.com这样的链接

票数 4
EN

Stack Overflow用户

发布于 2012-02-03 12:11:38

无论是连接到HTTPS还是HTTP站点,对于NSURLConnection和UIWebView控件都应该是完全透明的。您可能需要做的唯一一件事是,如果服务器站点证书是自签名或不可验证的证书,则添加代码以绕过浏览器获得的身份验证质询。(即,等同于由未知颁发机构签署证书并且您是否要接受它的消息)。

只需使用@"https://www.myhttpsite.com/“URL,它的工作方式应该与普通HTTP相同。

要绕过无法识别的证书签名者的安全问题,对于NSURLConnection,请将以下内容添加到委托方法中:

代码语言:javascript
运行
复制
- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge {
    NSArray *trustedHosts = [NSArray arrayWithObjects:@"mytrustedhost",nil];

    if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]){
        if ([trustedHosts containsObject:challenge.protectionSpace.host]) {
        [challenge.sender useCredential:[NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust] forAuthenticationChallenge:challenge];
        }
    }
    [challenge.sender continueWithoutCredentialForAuthenticationChallenge:challenge];
}

在iOS4.3之前,你需要做一些稍微不同的事情,你可以向URLRequest类添加一个类别,为来自未被识别的主机的证书实现安全绕过。

注意:任何忽略证书不是由认可的机构签署的解决方案都要小心,因为这样做会打开一个潜在的安全漏洞,但这通常是必要的,至少对于测试服务器上有自己/内部签名的证书是必要的。

要在web视图中打开URL连接,请执行以下操作:

代码语言:javascript
运行
复制
NSURL *websiteUrl = [NSURL URLWithString:@"https://www.mysecuresite.com/"];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:websiteurl];
[myWebView loadRequest:urlRequest];
票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9122761

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档