websocket报错集锦-不断更新中

这篇具有很好参考价值的文章主要介绍了websocket报错集锦-不断更新中。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

问题1:Failed to construct ‘WebSocket’: An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.

问题描述
Mixed Content: The page at 'https://AAAAAA.com' was loaded over HTTPS, but attempted to connect to the insecure WebSocket endpoint 'ws://10.100.100.100:30000/'. This request has been blocked; this endpoint must be available over WSS.
index.1ea3d99d.js:4 DOMException: Failed to construct 'WebSocket': An insecure WebSocket connection may not be initiated from a page loaded over HTTPS.
问题分析
  • HTTPS基于SSL依靠证书验证服务器身份,进行通信加密,我们的域名是https.所以非SSL验证的资源时浏览器可能会阻止。
  • ws://调用websocket服务器或者请求http://*都会报错
问题解决
  • 方案一:在前端将:ws:// 修改为:wss://,所有http改为https的资源
  • 方案二:配置nginx代理
server
{
    listen 80;
    listen 443 ssl;
    server_name 域名;
 
    ssl on;
    ssl_certificate 证书.crt;
    ssl_certificate_key 证书.key;
    ssl_session_timeout 5m;
    ssl_session_cache shared:SSL:50m;
    ssl_protocols SSLv3 SSLv2 TLSv1 TLSv1.1 TLSv1.2; # 按此协议配置
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
    ssl_prefer_server_ciphers on;
    
    location /wss/  {   
     proxy_pass http://127.0.0.1:82/;        # 指向部署websocket的项目
     proxy_http_version 1.1;    
     proxy_set_header Upgrade $http_upgrade;    
     proxy_set_header Connection "Upgrade";    
     proxy_set_header X-real-ip $remote_addr;
     proxy_set_header X-Forwarded-For $remote_addr;
     }
}

问题2:34. ws.9341e94c.js:1 Uncaught DOMException: Failed to execute ‘send’ on ‘WebSocket’: Still in CONNECTING state.

问题描述
 Uncaught DOMException: Failed to execute 'send' on 'WebSocket': Still in CONNECTING state.
问题分析

webscoket连接标志有四个值,分别对应不同的状态,如下:

  • WebSocket.CONNECTING:值为0,表示正在连接;
  • WebSocket.OPEN:值为1,表示连接成功,可以通信了;
  • WebSocket.CLOSING:值为2,表示连接正在关闭;
  • WebSocket.CLOSED:值为3,表示连接已经关闭,或者打开连接失败。
    这个错误原因:WebSocket处在正在连接的状态(CONNECTING),其实还没有连接成功,然后调用者又调用了send方法发送,所以still in connecting
问题解决
  • 在websocket open函数里面执行send方法
ws.onopen = () => {
ws.send('i am xiaojin');
}
  • 判断websocket链接状态,再进行发送
if (ws.readyState===1) {
    ws.send()
}
今天就写到这里啦~
  • 小伙伴们,( ̄ω ̄( ̄ω ̄〃 ( ̄ω ̄〃)ゝ我们明天再见啦~~
  • 大家要天天开心哦

欢迎大家指出文章需要改正之处~
学无止境,合作共赢

websocket报错集锦-不断更新中文章来源地址https://www.toymoban.com/news/detail-474634.html

欢迎路过的小哥哥小姐姐们提出更好的意见哇~~

到了这里,关于websocket报错集锦-不断更新中的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uniapp系列-报错或常见问题处理集锦

    情况1:执行run dev命令后,一直就不动了,输出如下 情况2:输出如下 解决方案: 通过执行npx @dcloudio/uvm alpha升级依赖 运行之前先检查一下你的package.json 里vite版本,不要被官方给你升级太高了哦,如果有问题,可以参考下文 - 问题十八 解决方案: step1: 运行 yarn install下载依

    2023年04月16日
    浏览(46)
  • 前端连接线上websocket报错 websocket connection to ‘***‘ failed

    报错: wss连接是不能以ip加端口的方式来连接的 解决办法是 利用nginx的反向代理功能 nginx配置文件中,加入如下配置: 重启ng,生效

    2024年02月15日
    浏览(47)
  • npm pnpm yarn 报错或常见问题处理集锦

    各种卡死,报错问题处理汇总 方法1:切换源 方法2:清除缓存 解决方案1 node-sass 从 淘宝源下载 解决方案1 将 yarn 源切换至淘宝源 解决方案1 node-sass 从 淘宝源下载 解决方案1 除 yarn.lock 文件,重新执行 解决方案1 删除之前node-mdules ,重新执行 解决方案: 查访此issue后得知: 把

    2024年01月17日
    浏览(40)
  • 关于ruoyi集成websocket后报错“WebSocket connection to ‘ws://localhost‘ failed:”

    在若依项目中需要做一个在线沟通的聊天功能,所以在若依的脚手架中集成了websocket。 在若依中集成websocket后进行通信,但是在开启websocket的时候会报错“ WebSocket connection to \\\'ws://localhost\\\' failed: ”。找了很多解决方法都无法解决,包括:修改vue.config.js中的配置,修改跨域的配

    2024年02月11日
    浏览(60)
  • vue 报错:WebSocket connection to ‘ws://192.168.51.116:3000/ws‘ failed:

    vue创建项目打开页面后可以运行正常,就是控制台一直报websocket的connection错误 WebSocket connection to \\\'ws://192.168.51.116:3000/ws\\\' failed:  在网上找到一个靠谱的方法了,修改vue.config.js里的devServer配置 重启后就不报错了。

    2024年02月11日
    浏览(49)
  • 屏蔽socket 实例化时,握手阶段报错信息WebSocket connection to ‘***‘ failed

    事情起因是这样的: 我们网站是需要socket链接实行实时推送服务,有恶意竞争对手通过抓包或者断网,获取到了我们的socket链接地址,那么他就可以通过java写一个脚本无限链接这个socket地址。形成dos攻击。使socket服务器资源耗尽,造成服务器瘫痪。 。而又因为这个错误是再

    2024年02月12日
    浏览(43)
  • WebSocket connection to ‘ws://x.x.x.x:8080/ws‘ failed:报错

    今天在写vue项目时打开控制台突然发现十几个报错,内容如下    这是个啥,,,头大  百度一番,发现这个东西叫做WebSocket长连接。。。。。 为了解决这个问题,花了我一番力气 百度到的解决方法好多,但是都是在vue.config.js中进行修改,以下是几种我找到的方法(对我没

    2024年02月16日
    浏览(45)
  • 【报错】WebSocket connection to ‘ws://xxx.xxx.x.xxxx:8080/ws‘failed:

    当我们运行Vue项目时,你可能会遇到一下问题 简单来说,WebSocket 为web应用程序客户端和服务端之间(客户端服务端)提供了一种全双工通信机制,报错是因为发送报文的过程出现问题。 解决方案如下: 在Vue项目的config.vue的文件中添加一下配置信息 这样问题也就能解决了,也

    2024年02月11日
    浏览(51)
  • 解决报错:Websocket connection to‘ws://127.0.0.1:5000/socket.io/?EIO=4&transport=websocket’failed:Error

    报错全文为:Websocket connection to‘ws://127.0.0.1:5000/socket.io/?EIO=4transport=websocket’failed:Error during Websocket handshake:Unexpected response code:400。如下图所示。 这个问题报的错误是EIO=4,查阅网上的各类信息资料会发现,基本没有这个报错的解法。网上基本大多数报错是EIO=3。 笔者认

    2024年02月14日
    浏览(42)
  • websocket 线上环境报错:Handshake failed due to invalid Upgrade header: null

    一、问题描述: 公司有个项目用到了websocket,在本地环境测试没有问题,因为公司后台websocket是微服务搭建,我们需要nginx进行一层代理,结果出现如下错误 Handshake failed due to invalid Upgrade header: null 二、问题解决 1、首先找到自己nginx的配置文件—配置下面代码 —— nginx重启

    2024年02月11日
    浏览(52)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包