websocker初步学习

WebSocket是一种HTML5的全双工通信协议,不同于HTTP,它允许服务器主动推送消息。WebSocket使用包括open、message、error和close四个事件,以及send和close两个方法进行通信。在实例中,通过检查socket.readyState可得知连接状态。
摘要由CSDN通过智能技术生成

websocket是什么

websocket是HTML5出的一个在TCP上的全双工通信协议。它和HTTP其实没多大关系。

websocket有什么优点

websocket允许服务端主动向客户端发送消息。
HTTP协议服务端是无法主动向客户端发送消息的,想要实现推送就只能靠Ajax轮询,消耗资源大。

websocket怎么用

websocket有四个事件,两个方法

事件
  • open事件:socket.onpen 连接建立时触发
  • message事件:socket.onmessage 客户端接收服务端信息时触发
  • error事件:socket.onerror 发送错误时触发
  • close事件:socket.onclose 连接关闭时触发
方法
  • socket.send() 使用连接发送数据
  • socket.close() 关闭连接
来个实例
//先判断一下浏览器是不是支持
if ("Websocket" in window) {
//接着创建连接,new一个websocket对象
	var ws = new Websocket("ws://localhost:9998/echo")

	ws.onopen = function () {
	//连接上之后就可以用send方法来发送数据了
	ws.send("发送数据");
}
	//发送之后就要接收从服务端来的数据了
	ws.onmessage = function (evt) {
	var data = evt.data;	//获取数据存入变量
}
	//最后当然还要关闭连接
	ws.close();
	ws.onclose = function () {
	alert("连接关闭了,我关的")
}
}
查看连接状态

socket.readyState :
readyState 表示连接状态,可以是以下值:

0 - 表示连接尚未建立。

1 - 表示连接已建立,可以进行通信。

2 - 表示连接正在进行关闭。

3 - 表示连接已经关闭或者连接不能打开。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值