uni-app iOS HTTPS 报错提示“此服务器的证书无效。你可能正在连接到一个伪装成www.xxx.cn的服务器”。
uni-app iOS HTTPS 报错提示“此服务器的证书无效。你可能正在连接到一个伪装成www.xxx.cn的服务器”。
操作步骤:
- 云打包
- 打包ipa安装到手机上
- 打开app,点击页面,从后台获取数据。
预期结果:
可以从后端获取数据
实际结果:
从后台获取数据失败。
| 项目信息 | 描述 |
|------------------|--------------------------------------------|
| 产品分类 | uniapp/App |
| PC开发环境 | Windows |
| PC开发环境版本 | Windows 11 家庭中文版 22H2 |
| HBuilderX类型 | 正式 |
| HBuilderX版本 | 3.99 |
| 手机系统 | iOS |
| 手机系统版本 | iOS 16 |
| 手机厂商 | 苹果 |
| 手机机型 | iphone se2 |
| 页面类型 | vue |
| vue版本 | vue2 |
| 打包方式 | 云端 |
| 项目创建方式 | HBuilderX |
### bug描述:
iOS16.5 开发证书云打包后,与服务端通信失败。
APP端与服务端之间,使用自签名证书。
HTTPS,域名和子定义端口号(非443端口)进行访问。
使用uni.request,错误:`{"errMsg":"request:fail abort statusCode:-1 此服务器的证书无效。你可能正在连接到一个伪装成www.xxx.cn的服务器,这会威胁到你的机密信息的安全。(-1202)"}`
已知:1. 访问时,服务端工作正常;2. android工作正常。3. 已上架到app store的旧版本app工作正常,也是用的相同证书、相同域名和端口。

9 回复
443才是HTTPS,其他都是HTTP端口
和端口应该没关系的。
用的https:// 并且内容也是tls加密的。
补充:
按照 https://uniapp.dcloud.net.cn/tutorial/app-nativeresource-ios.html 说明,在 Info.plist 中指定了 NSAllowsArbitraryLoads 为true,也不行。
必须使用正规CA颁发的SSL证书吗? 换后台证书,APP端的uni.configMTLS调用得去掉吧…… 论坛这么冷清吗
补充最新发现:
iOS 打包,在没有手动创建 Info.plist 的情况下打包,查看打包后的 ipa 文件中的 Info.plist ,NSAllowsArbitraryLoads就为true。
解决了吗
解决了吗
解决了吗 这个问题困惑几周了