如何解决在iPhone模拟器上成功安装证书后,点击Web服务时仍然出现SSL错误
我正在开发一个Web服务和iOS应用程序,该应用程序可以在本地计算机上运行该Web服务。首先,我禁用了与服务交互的明文错误,但现在我想使用https,以便我的开发,测试和产品环境尽可能相似。
我在本地安装了我的自签名证书,因此直接使用https进入站点就可以了:
但是,当我在使用此证书的本地计算机上单击Web服务时,仍然在控制台中收到以下错误:
2020-10-17 09:59:10.891496-0500 cttios[45481:2146304] [] nw_protocol_get_quic_image_block_invoke dlopen libquic failed
2020-10-17 09:59:10.899475-0500 cttios[45481:2146304] ATS failed system trust
2020-10-17 09:59:10.899583-0500 cttios[45481:2146304] Connection 1: system TLS Trust evaluation failed(-9802)
2020-10-17 09:59:10.899744-0500 cttios[45481:2146304] Connection 1: TLS Trust encountered error 3:-9802
2020-10-17 09:59:10.900077-0500 cttios[45481:2146304] Connection 1: encountered error(3:-9802)
2020-10-17 09:59:10.901405-0500 cttios[45481:2146304] Task <BE791070-705B-4C7D-A1DB-F57BCF1DFBCE>.<1> HTTP load failed,0/0 bytes (error code: -1200 [3:-9802])
2020-10-17 09:59:10.904343-0500 cttios[45481:2146304] Task <BE791070-705B-4C7D-A1DB-F57BCF1DFBCE>.<1> finished with error [-1200] Error Domain=NSURLErrorDomain Code=-1200 "An SSL error has occurred and a secure connection to the server cannot be made." UserInfo={NSLocalizedRecoverySuggestion=Would you like to connect to the server anyway?,_kCFStreamErrorDomainKey=3,NSErrorPeerCertificateChainKey=(
"<cert(0x7ff4ce854600) s: cttweb.test i: Homestead homestead Root CA>"
),NSErrorClientCertificateStateKey=0,NSErrorFailingURLKey=https://cttweb.test/api/v1/login,NSErrorFailingURLStringKey=https://cttweb.test/api/v1/login,NSUnderlyingError=0x600001123ab0 {Error Domain=kCFErrorDomainCFNetwork Code=-1200 "(null)" UserInfo={_kCFStreamPropertySSLClientCertificateState=0,kCFStreamPropertySSLPeerTrust=<SecTrustRef: 0x600002d55cb0>,_kCFNetworkCFStreamSSLErrorOriginalValue=-9802,_kCFStreamErrorCodeKey=-9802,kCFStreamPropertySSLPeerCertificates=(
"<cert(0x7ff4ce854600) s: cttweb.test i: Homestead homestead Root CA>"
)}},_NSURLErrorRelatedURLSessionTaskErrorKey=(
"LocalDataTask <BE791070-705B-4C7D-A1DB-F57BCF1DFBCE>.<1>"
),_NSURLErrorFailingURLSessionTaskErrorKey=LocalDataTask <BE791070-705B-4C7D-A1DB-F57BCF1DFBCE>.<1>,NSURLErrorFailingURLPeerTrustErrorKey=<SecTrustRef: 0x600002d55cb0>,NSLocalizedDescription=An SSL error has occurred and a secure connection to the server cannot be made.}
Login api error: An SSL error has occurred and a secure connection to the server cannot be made.
Optional(["task": ["Login api error: An SSL error has occurred and a secure connection to the server cannot be made."]])
我尝试在安装证书后重新启动模拟器,结果相同。我在做什么错了?
即使安装了该证书,我似乎也不信任该证书,但是我找不到找到信任该证书的方法。
解决方法
问题是我安装了网站证书,但没有安装为本地Web服务器生成的CA证书。就像将CA根证书拖到模拟器上的Safari一样简单。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。