相关疑难解决方法(0)

如何使用NSURLConnection连接SSL以获取不受信任的证书?

我有以下简单的代码连接到SSL网页

NSMutableURLRequest *urlRequest=[NSMutableURLRequest requestWithURL:url];
[ NSURLConnection sendSynchronousRequest: urlRequest returningResponse: nil error: &error ];
Run Code Online (Sandbox Code Playgroud)

如果证书是自签名的,那么它会出错.Error Domain=NSURLErrorDomain Code=-1202 UserInfo=0xd29930 "untrusted server certificate".有没有办法将它设置为接受连接(就像在浏览器中你可以按接受)或绕过它的方法?

https objective-c ssl-certificate ios app-transport-security

299
推荐指数
9
解决办法
26万
查看次数

UIWebView查看自签名网站(没有私人API,不是NSURLConnection) - 有可能吗?

有很多问题要问:我可以UIWebView查看自签名的HTTPS网站吗?

答案总是涉及:

  1. 使用私人api调用NSURLRequest:allowsAnyHTTPSCertificateForHost
  2. 使用NSURLConnection代替和委托canAuthenticateAgainstProtectionSpace

对我来说,这些都不行.
(1) - 表示我无法成功提交到应用商店.
(2) - 使用NSURLConnection意味着在加载初始HTML页面后必须从服务器获取的CSS,图像和其他内容.

有谁知道如何使用UIWebView查看自签名的https网页,这不涉及上述两种方法?

或者 - 如果使用NSURLConnectioncan实际上可以用来渲染一个完整的CSS,图像和其他所有的网页 - 这将是伟大的!

干杯,
拉伸.

iphone uiwebview ios

49
推荐指数
4
解决办法
6万
查看次数

为什么iOS 5无法连接到运行JDK 1.6的服务器,而不能连接到JDK 1.5

我们有一个Java Socket服务器监听SSLSocket(端口443)和一个连接它的iOS应用程序.在iOS 5.1上运行时,当我们将Java版本的服务器从JDK 1.5升级到1.6(或1.7)时,应用程序停止工作.在iOS 6上运行时,该应用程序可以很好地连接到JDK 5和6.

iOS应用报告错误: -9809 = errSSLCrypto.在Java方面,我们得到了javax.net.ssl.SSLException: Received fatal alert: close_notify.

在Java服务器端,我们启用了所有可用的密码套件.在客户端,我们测试了几个不同的套件,虽然我们还没有完成一个涉及每个单独启用的测试.现在,当我们使用时TLS_DH_anon_WITH_AES_128_CBC_SHA它失败了,虽然它已经失败了,但我们开始认为它不是套件.

这是调试输出.它一直到达ServerHelloDone,然后很快失败:

Is secure renegotiation: false
[Raw read]: length = 5
0000: 16 03 03 00 41                                     ....A
[Raw read]: length = 65
0000: 01 00 00 3D 03 03 50 83   1E 0B 56 19 25 65 C8 F2  ...=..P...V.%e..
0010: AF 02 AD 48 FE E2 92 CF   B8 …
Run Code Online (Sandbox Code Playgroud)

java ssl jsse diffie-hellman ios5

21
推荐指数
1
解决办法
1538
查看次数

Swift 2 - Xcode 7.0无法使用不受信任的SSL证书访问HTTPS站点

专家,我是IOS 9/XCODE 7/Swift 2开发套件的初学者

我正在尝试创建一个只使用HTTPS协议路由到Web应用程序的ios应用程序.下面是我目前的代码ViewController.swift

import UIKit

class ViewController: UIViewController {

    @IBOutlet var myWebView: UIWebView!

    /**
     * Function to Display the Web Application initial URL
     */
    func loadAppURL(){
        let siteAddress = "https://domain:8443/path/to/page"
        let url = NSURL (string: siteAddress)
        let urlRequest = NSURLRequest(URL: url!)
        myWebView.loadRequest(urlRequest)
    }

    override func viewDidLoad() {
        super.viewDidLoad()
        loadAppURL()
    }

    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
        // Dispose of any resources that can be recreated.
    }
}
Run Code Online (Sandbox Code Playgroud)

在构建我的应用程序时,它显示以下错误消息

2015-10-01 01:05:13.879网页测试器[2947:31838] NSURLSession/NSURLConnection HTTP加载失败(kCFStreamErrorDomainSSL,-9807)

如果我尝试构建我的应用程序而不是" https://域:8443 /路径/到/页面 "与" http://www.apple.com "它的工作正常. …

ssl ios ios9 xcode7 swift2

10
推荐指数
1
解决办法
2万
查看次数

HTTPS请求仅在iOS,Ionic 2上失败

我有一个Ionic 2应用程序调用Spring BootAPI将推送通知发送到其他设备.API使用HTTPS配置.

API POST请求适用于除外的 所有内容iOS.

我在服务器上的SSL证书是自签名的(可能就是这样吗?).

适用于:

  • 离子发球
  • Android的
  • 邮差
  • 卷曲

这是请求:

public sendNotificationRequest(title: string, action: string, name: string, tokens: any, notifications: boolean) {
    // Check if user turned off notifications
    if(!notifications) {
        return;
    }

    let headers = new Headers({'Content-Type': 'application/json'});
    headers.append('Authorization', 'Basic ' + btoa(this.username_decrypted + ':' + this.password_decrypted));
    let body = this.formObj(tokens, title, action, name);
    console.log(body);

    this.http.post("https://<some-url>",
                    body, { headers: headers }
    ).subscribe((response) => {
        console.log("HTTPS RESPONSE");
        console.log(response);
    }, …
Run Code Online (Sandbox Code Playgroud)

api https spring-boot ionic2

6
推荐指数
1
解决办法
7931
查看次数