由浅入深—Websocket

Websocket介绍

Websocket是一种协议,与http协议类似,这两种协议用于客户端与服务器端之间的通信。
但是,Websocket与http是有差别的。

我们常用的http与服务器端通信是有限制的,服务器端不能主动向客户端发送数据。
在这里插入图片描述

客户端发送请求,服务器响应请求,服务器无法主动向客户发送数据。

websocket可以使服务器端主动向客户端通信
在这里插入图片描述

websocket使用

单单看理论介绍是不能更好的了解websocket。

websocket协议正因为服务器可以向用户端主动发信息,所以在聊天应用上使用的比较多。
当然http也可以实现聊天应用,那就是使用轮询

轮询——客户端每隔一段时间就向服务器端发请求,使得客户端能实时获取到服务器端最新的数据。


1、创建websocket对象(重要,必须先创建websocket对象)

let ws=new WebSocket("这里填服务器端执行websocket应用的路径");//例如:ws://127.0.0.1:8111
//在协议上就可以看到与http请求的差别。

2、客户端与服务器建立链接时执行——open事件

ws.addEventListener("open",()=>{
	console.log("与服务器链接");
});

3、客户端发送消息——send事件

ws.send("你好,服务器");//使用send就可以向服务器端发信息

4、客户端接收服务器端发送的消息——message事件

ws.addEventListener("message",(content)=>{
	console.log("content就是服务器端发过来的消息:"+content);
})

5、客户端主动关闭与服务器端的链接——close事件

ws.close();//客户端主动关闭与服务器端的链接

6、客户端关闭与服务器端的链接后执行——close事件

ws.addEventListener("close",()=>{
	console.log("客户端关闭链接后执行该回调");
});

7、客户端与服务器端链接异常——error事件

ws.addEventListener("error",(err)=>{
	console.log(err);
});

error事件需要注意的是,当链接异常,会执行error事件,但是close事件也会跟着触发。

概括:

websocket事件介绍
open客户端与服务器端链接
send客户端主动向服务器端发信息
message客户端接收服务器端消息
close客户端主动与服务器端关闭链接
close客户端与服务器端关闭链接时执行
error客户端与服务器端链接异常

Tips:
服务器端小编用的是node.js较多,所以创建websocket应用用的模块叫:nodejs-websocket

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值