javascript如何实现websocket_如何建立连接

JavaScript中建立WebSocket连接需用new WebSocket(url)创建实例,正确处理onopen、onmessage、onerror、onclose事件,并在readyState为OPEN时调用send()发送数据,关闭时用close()。

javascript如何实现websocket_如何建立连接

JavaScript 中建立 WebSocket 连接很简单,核心就是用 new WebSocket(url) 创建实例,关键在于正确处理连接状态和错误。

创建 WebSocket 实例

只需传入 ws:// 或 wss:// 开头的服务端地址:

const ws = new WebSocket("ws://localhost:8080");(开发常用) const ws = new WebSocket("wss://api.example.com/chat");(生产环境推荐,走加密通道)

注意:协议必须匹配服务端配置,不能用 http:// 或 https://,否则会报错。

监听连接状态事件

WebSocket 是事件驱动的,主要靠这四个事件控制流程:

立即学习“Java免费学习笔记(深入)”;

ws.onopen:连接成功后触发,可以在这里发初始化消息 ws.onmessage:收到服务器消息时触发,event.data 就是内容 ws.onerror:发生网络或协议错误时触发(比如跨域、地址不可达) ws.onclose:连接关闭时触发,event.codeevent.reason 可查原因

建议在 onerror 里至少打个日志,不然失败了也不知哪出问题。

发送与关闭连接

连接打开后才能安全发送数据:

ws.send("hello server"); —— 只能发字符串、ArrayBuffer、Blob、TypedArray ws.close(); —— 主动断开,可选传入状态码和原因:ws.close(1000, "user logout")

如果 ws.readyState 不是 1(OPEN),调 send() 会直接报错。发之前建议判断:if (ws.readyState === WebSocket.OPEN) ws.send(...);

简单完整示例

把上面串起来,一个最小可用片段:

const ws = new WebSocket("wss://echo.websocket.org"); // 公共测试地址ws.onopen = () => console.log("已连接");ws.onmessage = event => console.log("收到:", event.data);ws.onerror = err => console.error("连接出错", err);ws.onclose = event => console.log("已断开", event.code, event.reason);// 3秒后发条消息(确保连接已建立)setTimeout(() => {  if (ws.readyState === WebSocket.OPEN) {    ws.send("test message");  }}, 3000);

基本上就这些。不复杂但容易忽略状态判断和错误处理,补上就稳了。

以上就是javascript如何实现websocket_如何建立连接的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1543274.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
为什么需要学习JavaScript_它如何成为现代网页开发的核心语言呢
上一篇 2025年12月21日 14:54:42
JavaScript异步编程是什么_回调函数怎么用?
下一篇 2025年12月21日 14:54:53

相关推荐

发表回复

登录后才能评论
关注微信