小程序 websocket建立wss连接时报错
发布于 6 年前 作者 osong 5838 次浏览 来自 问答

在小程序中建立websocket时,后端服务是wss协议。

//连接失败

wx.onSocketError(function (e) {

console.log(‘websocket连接失败!’, e);

})

捕捉到如下错误:

errMsg:“com.android.org.bouncycastle.jce.exception.ExtCertPathValidatorException: Could not validate certificate: null”

后端服务器没有收到任何请求。

很奇怪,在工具中调试没有任何问题,一到我的手机上调试就出现了上述问题。我的手机的android版本为4.4.2  手机是华为荣耀6.  有人说是证书问题,我通过检测没有发现问题

https://www.myssl.cn/tools/check-server-cert.html 提供的检测工具 也一切正常。

同时在应用中通过web-view也能正常打开应用页面。通过https连接发送内容也正常。

向官方的客服提到此问题,建议我上这里来提问,有人遇到过这个问题吗?

8 回复

这个错误是安卓系统抛出的,建议查看下安卓的官方文档:https://developer.android.google.cn/training/articles/security-ssl.html?hl=zh-cn。

服务器的tls版本有支持1.0 1.1. 1.2吗?

确实是有的手机可以,有的不可以。

我用同事的android7的手机测试又可以,兼容性不好,但是官方文档又没有提及这块的兼容性如何处理,纠结…

@willen 有的,这是服务端ngxin的配置。可能现在根本就没有连接到服务器进行握手。

我早上看了你发的这个链接,https://developer.android.google.cn/training/articles/security-ssl.html?hl=zh-cn

这个应该不是解决我的这个问题,我这边报的错误信息是这个

com.android.org.bouncycastle.jce.exception.ExtCertPathValidatorException: Could not validate certificate: null


java.security.cert.CertPathValidatorException:Trust anchor for certification path
not found

我这里也出现了测试机型适配是部分安卓机器已连接wss的socket就报错断开的问题,请问官方解决了吗, 是我什么地方设置的不对吗。我开启了不校验服务器域名合法性的开关使用调试模式真机测试。应该不是服务器配置问题啊,部分安卓机型出现,请问您的问题解决了吗

可以google一下这个错误信息,这边加你微信看下

我也有这个问题,部分手机正常,部分手机不正常。烦请官方认真查下这个问题。

回到顶部