javascript – 无法在Chrome(wss)中运行的Websockets:“握手被取消”

前端之家收集整理的这篇文章主要介绍了javascript – 无法在Chrome(wss)中运行的Websockets:“握手被取消”前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我目前正在Docker Cloud上开发Websocket应用程序.重新部署我的应用程序时,现在我总是收到此错误消息:

WebSocket connection Failed: WebSocket opening handshake was canceled

在查看数据框时,我看到一个包含此数据的帧:

(Opcode -1)

在研究问题时,似乎与SSL /证书等有关.一些解决方包括添加自签名证书.令人困惑的是,相同的证书似乎适用于https但不适用于wss:

在使用其他浏览器进行测试时,我发现Safari工作正常.所以我确信服务器实际上在正确的端口上使用正确的证书运行.只有chrome似乎有问题.

我知道堆栈溢出的一些解决方案可以手动添加证书,但由于它适用于Safari并且它不是自签名证书,我认为它应该可以正常工作.

解决方法

根据 SSLabs检查站点显示服务器未提供证书链的所有必需部分但错过了链证书:

This server’s certificate chain is incomplete. Grade capped to B.

Chain issues Incomplete

2 Extra download – Let’s Encrypt Authority X3

通过正确配置服务器解决此问题后,它应该适用于所有浏览器.目前它可能只适用于某些浏览器,即如果浏览器缓存了访问其他站点(如Firefox)的丢失链证书,或者它是通过下载丢失的链证书(Chrome)来解决配置错误的服务器.

猜你在找的JavaScript相关文章