uni-app iOS HTTPS 报错提示“此服务器的证书无效。你可能正在连接到一个伪装成www.xxx.cn的服务器”。

发布于 1周前 作者 sinazl 来自 Uni-App

uni-app iOS HTTPS 报错提示“此服务器的证书无效。你可能正在连接到一个伪装成www.xxx.cn的服务器”。

操作步骤:

  1. 云打包
  2. 打包ipa安装到手机上
  3. 打开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工作正常,也是用的相同证书、相同域名和端口。

![](https://www.itying.com/uniimg.php?url=https://img-cdn-tc.dcloud.net.cn/uploads/questions/20240309/cab712490da28b9b85e5b928b8375955.jpg)

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。

解决了吗

解决了吗 这个问题困惑几周了

回到顶部
AI 助手
你好,我是IT营的 AI 助手
您可以尝试点击下方的快捷入口开启体验!