欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 科技 > 能源 > webSocket的使用文档

webSocket的使用文档

2025/2/24 11:23:11 来源:https://blog.csdn.net/weixin_45324044/article/details/143777207  浏览:    关键词:webSocket的使用文档

webSocket的使用文档

    • 1.webSocket介绍
    • 2.webSocket使用

1.webSocket介绍

WebSocket是在单个TCP连接上提供全双工通信的协议。它允许双方同时进行数据传输,而不需要等待对方的响应,简单说就是他是服务器和客户端相互主动传输信息的约定协议。

优点

  1. 双向通信:WebSocket 允许客户端和服务器之间进行双向通信,客户端可以主动向服务器发送消息,而不需要等待服务器的请求
  2. 低延迟:WebSocket 连接在建立后保持打开状态,减少了每次请求和响应所需的开销,从而降低了延迟。
  3. 持久连接:WebSocket 连接是持久的,允许长时间保持连接而无需重新建立。
  4. 跨域支持:WebSocket 协议支持跨域通信,可以与不同源的服务器进行交互。
    总之,WebSocket 提供了一种高效、灵活的方式来实现实时数据传输,特别适合需要快速和频繁更新数据的应用程序。

2.webSocket使用

webSocker官网介绍

状态:

常量作用
WebSocket.CONNECTING0连接正在建立阶段
WebSocket.OPEN1连接已经建立可以通信
WebSocket.CLOSING2连接正在关闭
WebSocket.CLOSED3连接已经关闭或者未建立连接

代码事例:

javascript
// 初始化 WebSocket 实例,连接到指定的 WebSocket 服务器 (后端地址10.10.10.100:8080)
const webSocket = new WebSocket('ws://10.10.10.100:8080/webSocket');
// 检查WebSocket连接状态 if (webSocket.readyState === WebSocket.CONNECTING) {console.log("连接正在建立..."); } else if (webSocket.readyState === WebSocket.OPEN) {console.log("连接已建立!"); } else if (webSocket.readyState === WebSocket.CLOSING) {console.log("连接正在关闭..."); } else if (webSocket.readyState === WebSocket.CLOSED) {console.log("连接已关闭!"); }

常用属性:

属性描述
WebSocket.onmessage接收到信息时的回调函数
WebSocket.onopen连接成功后的回调函数
WebSocket.onerror连接失败是要执行的回调函数
WebSocket.onclose设置连接关闭时要执行的回调函数

代码事例:

// 创建 WebSocket 实例,连接到指定的 WebSocket 服务器
const WebSocket = new WebSocket('ws://10.10.10.100:8080/webSocket')
// 连接成功时的回调函数
webSocket.onopen = (event)=>{console.log('连接已建立!');  // 在这里可以执行连接成功后的操作,例如发送数据webSocket.send('Hello, WebSocket Server!');
};// 接收到消息时的回调函数
webSocket.onmessage = (event)=>{
// 在这里可以处理接收到的消息console.log('接收到消息:', event.data);
};// 连接关闭时的回调函数
webSocket.onclose = (event)=> {// 在这里可以执行连接关闭后的操作console.log('连接已关闭!');
};// 连接发生错误时的回调函数
webSocket.onerror = (error)=> {//在这里可执行连接失败可重连console.error('连接发生错误:', error);
};

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词