Swift - 该服务器的证书无效

7
我该如何使用Swift来解决iOS上的这个问题?当我进行服务器请求时,我收到以下错误信息:
“该服务器的证书无效。您可能正在连接一个假冒为“…”的服务器,这可能会危及您的机密信息。”
3个回答

6

您只需要在iOS模拟器上安装证书即可。


根据Charles文档:

退出iOS模拟器。启动Charles并转到帮助菜单。 选择“SSL代理>在iOS模拟器中安装Charles根证书”选项。这将把Charles根证书安装到所有iOS模拟器中。现在,当您启动iOS模拟器时,您应该能够使用SSL代理通过Charles访问SSL网站。


很棒!!谢谢。 - Deepak Bradly
@Enrique 我是使用 Charles Proxy 的新手。如果我按照这个做,我的互联网本身会停止工作。我无法在 iOS 模拟器上测试应用程序。请建议。 - yaali

2
您很可能正在尝试连接具有自签名 SSL 证书的服务器。iOS 不喜欢它。 请查看此帖子作为示例:Swift SSL error with self signed certificate。 其他可能的问题是代理配置,例如使用 Charles 等。 更多细节可能有助于确定问题的根源...

2
我的应用程序在 iOS 13 之前都运行良好。但是在测试 iOS 13 时,我遇到了这个错误。有什么建议吗?因为现在我无法更改服务器证书,所以有没有办法绕过这个错误? - Bagusflyer
你可以尝试实现URLSessionDelegatefunc urlSession(_ session: URLSession, task: URLSessionTask, didReceive challenge: URLAuthenticationChallenge, completionHandler: @escaping (URLSession.AuthChallengeDisposition, URLCredential?) -> Void)方法,以覆盖默认行为。 - Ariel
2
我正在使用Alamofire调用rest api。有没有办法绕过这个错误?谢谢。 - Bagusflyer
@Bagusflyer 你找到解决方案了吗? - sarah

0
只需将设备的时区设置为自动时区即可解决您的问题。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接