学习浏览器中的JS-WebSocket发送接收消息
这是我参与11月更文挑战的第20天,活动详情查看:2021最后一次更文挑战
前言
上文简单学习了关于浏览器中的JS之 WebSocket(一), 本文继续来学习WebSocket
通信二
通过前几篇文章我们学习记录了浏览器中的 JavaScript
, 更多更文-各知识点小结-list:
WebSocket
WebSocket 用于创建和管理 WebSocket 连接,可以通过该连接发送和接收数据的 API
通过 WebSocket 不仅仅是服务器向客户端发送消息了, 而且消息可以 双向发送 支持 JavaScript 代码在浏览器中与服务器方便地交换文本和二进制
消息.
WebSocket URL 则以 ws://
开头. (要使用WebSocket, 浏览器通常也会闲置只能在安全的 https://
连接加载的页面中使用)
使用 WebSocket 建立通信,发送数据
通过 WebSocket 向服务器发送消息, 可以调用 WebSocket 对象的send() 方法. send()方法接收一个消息参数(支持各种类型有没有):
- 字符串
- Blob
- ArrayBuffer
- 定型数组
- DataView对象
send()
方法通过把要发送的消息保存在缓冲区, 并在实际要发送前返回. WebSocket
对象的 bufferedAmount
属性保存着缓冲区暂未发送的字节数.
通过 WebSocket 接收消息
客户端/浏览器通过 WebSocket 从服务器接收消息, 通过注册 "message" 事件处理程序, 设置 WebSocket 对象的 onmessage 属性("监听消息"), 也可通过调用addEventListener().
与 "message" 关联的事件对象是MessageEvent的实例, 其 data属性包含服务器的消息(敲重点). 比如服务器发送的的是一个串utf-8 的文本, event.data
就是保存该文本的字符串. 如果服务器发送的是二进制格式的消息, 则data表示的是该数据的Blob对象
相关更文阅读
Calm Down & Carry On!
Buy Less by Know More!
学习, 记录, 积累 是一个漫长的过程! 加油!
参考内容
转载自:https://juejin.cn/post/7033106677515681806