websocket踩坑记录

最近实习中需要完成一个websocket的客户端,本来是很容易的一件事情,结果有非常多的坑。

  • 服务端连不上去
    这个本来是不可能的事情,结果我发现用nodejs和java写的客户端根本就连不上去,而js写的却在网页端倒是跑得很欢快。
    报错信息是
    Connect Error: Error: socket hang up
    这个报错就比较诡异了,这个情况应该是被服务端拒绝了。
    上面红色框是nodejs客户端被拒绝,下面是web端很正常的访问
    这样看起来我客户端没啥问题啊,三次握手后请求后被拒绝了,而web端没有被拒绝,那再对比一下http的请求头
    左边被拒绝,右边接受
    这样比较看得出来,可能是服务端对origin进行了检查,在nodejs端加上origin这个字段后果然可以连得上了。

  • 浏览器的websocket连接频繁断联
    在这里插入图片描述
    这个错误比较直观,抓包看了一下,是因为传递的数据中间有一些乱码,导致浏览器无法按照utf8解析而报错的,用reconnecting-websocket.js 很快就解决了。
    在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值