新开页面websocket会重新连接么_详解前端如何搭建一个websocket服务器

前言今天这篇文章我们聊一聊websocket,上篇文章说到的SSE只能单向传递数据,而websocket是全双工的,可以双向传递数据!当我们遇到需要互相实时通信的场景时就可以使用它,比如聊天等!客户端使用在页面上的使用还是非常简单的,和上一篇的SSE类似,代码如下:图1浏览器提供了原生接口WebSocket,使用它的实例然后绑定几个事件就可以使用了!WebSocket的第一个参数是一个实现了web...
摘要由CSDN通过智能技术生成

前言

今天这篇文章我们聊一聊websocket,上篇文章说到的SSE只能单向传递数据,而websocket是全双工的,可以双向传递数据!当我们遇到需要互相实时通信的场景时就可以使用它,比如聊天等!

客户端使用

在页面上的使用还是非常简单的,和上一篇的SSE类似,代码如下:

4359fa93ed1945e11a04a8909367c467.png

图1

浏览器提供了原生接口WebSocket,使用它的实例然后绑定几个事件就可以使用了!

  • WebSocket的第一个参数是一个实现了websocket服务的后端接口地址,注意使用的协议是ws,第二个参数是它的子协议(这里没有使用);
  • onopen事件在连接服务成功时触发;
  • onmessage事件在收发信息时触发,后端传来的数据可以从事件对象的data属性中取到;
  • onclose事件在连接关闭时触发;
  • 如果想要向后端传递数据,可以调用send方法。

如果想在页面上获取websocket的状态,可以通过实例对象的readyState属性获取,状态如下:

  • 0表示正在连接;
  • 1表示连接成功,可以通信了;
  • 2表示正在关闭;<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值