微信小程序05---WebSocket的使用

一、WebSocket

1、为什么要使用WebSocket

http:单向无状态;即 http只能是单向发起的,只能由客户端主动发起,服务端被动响应。服务端无法主动向客户端发送消息,如果想实现类似于聊天室这种即时通讯的功能,就需要使用消息轮询。但是轮询的效率低,比较消耗资源。(每次建立http连接都进行三次握手,并且每次请求都需要携带请求头),开发人员为了解决这个问题,发明了webSocket

2、什么是WebSocket

WebSocket是HTML5规范提出的一种协议。

它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送技术的一种。

3、WebSocket特点

  1. websocket建立连接时,数据是通过http传输的,建立连接后就不需要http协议了。
  2. websocket建立连接后就是==全双工模式==,也是基于tcp协议
  3. 发soon过的信息中不必带有head部分信息了,相对于http来说,降低了服务器的压力,极大的减少了不必要的网络流量和延迟
  4. 没有同源限制,客户端可以与任意服务器通信
  5. 协议标识符是ws(如果加密,则为wss),服务器网址就是URL

4、使用方法

  1. 打开连接 wx.connectSocket()
  2. 监听服务端信息 wx.onSocketOpen()
  3. 接收信息 wx.onSocketMessage()
  4. 发送消息 wx.sendSocketMessage()
  5. 关闭连接(很重要)wx.closeSocket()

具体使用请看下一章节—聊天室的实现

猜你喜欢

转载自blog.csdn.net/Wr2138/article/details/127502840