我的网站在HTTP和HTTPS上都有流量。
我开发了一个调用其中一些URL的应用程序(iOS 9),但是当我从HTTP更改为HTTPS时,我收到以下错误:
NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9813)
我已经禁用了ATS,因为我有一个facebook整合而且它在抱怨。
这是我调用的代码片段,并处理结果:
NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"https://myRestWebService?test=Y"]];
NSMutableURLRequest *request = [ NSMutableURLRequest requestWithURL:url];
NSError *error;
NSURLResponse *response;
NSData *myUrlData = [ NSURLConnection sendSynchronousRequest:request
returningResponse:&response
error:&error];
NSString *result = [[NSString alloc] initWithData:myUrlData encoding:NSUTF8StringEncoding];
如您所见,这是同步通话。
证书由Go Daddy签名,因此受信任,并且在浏览器上运行良好。
任何建议都将受到赞赏。
答案 0 :(得分:1)
我和Apple谈过,结果发现我的apache出了问题。 他们的答案是:
配置您的服务器以返回其中间证书 TLS握手。如果你正在使用Apache,你应该看看 SSLCertificateChainFile指令。
所以我设置了中间证书,一切都开始工作了。