内容简介:1、websocket 是什么?解决客户端与服务端实时通信而产生的技术。先通过HTTP/HTTPS协议进行握手后创建一个用于交换数据的TCP连接,然后服务端与客户端通过此TCP连接进行实时通信。
1、websocket 是什么?
解决客户端与服务端实时通信而产生的技术。
先通过HTTP/HTTPS协议进行握手后创建一个用于交换数据的TCP连接,然后服务端与客户端通过此TCP连接进行实时通信。
服务器和客户端可以在给定的时间范围内的任意时刻,相互推送信息。
以前我们实现推送技术,用的都是轮询,在特定时间间隔由浏览器自动发出请求,主动拉取服务器消息。需要不断的向服务器发送请求,会占用大量的带宽和服务器资源。
2、使用websocket
在支持WebSocket的浏览器中,在创建socket之后。可以通过onopen,onmessage,onclose、onerror四个事件实现对socket进行响应
只读属性 readyState 表示连接状态,可以是以下值:
0 - 表示连接尚未建立。
1 - 表示连接已建立,可以进行通信。
2 - 表示连接正在进行关闭。
3 - 表示连接已经关闭或者连接不能打开。
// window.WebSocket "WebSocket" in window 检测浏览器是否支持 WebSocket
var ws = new WebSocket(“ws://localhost:8080”);
// 申请一个WebSocket对象,参数是需要连接的服务器端的地址
// 同http协议使用http://开头一样,WebSocket协议的URL使用ws://开头
// 另外安全的WebSocket协议使用wss://开头。
// 指定连接成功后的回调函数
ws.onopen = function() {
console.log(“open”);
ws.send(“hello”);
// 用于向服务器发送数据
};
// 或者
ws.addEventListener('open', function (event) {
ws.send('Hello Server!');
});
// 指定收到服务器数据后的回调函数
ws.onmessage = function(evt) {
console.log(evt.data)
};
// 指定连接关闭后的回调函数
ws.onclose = function(evt) {
console.log(“WebSocketClosed!”);
};
// 指定报错时的回调函数
ws.onerror = function(evt) {
console.log(“WebSocketError!”);
};
// 关闭websocket
websocket.close();
以上所述就是小编给大家介绍的《WebSocket》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- WebSocket的故事(一)—— WebSocket的由来
- 八问WebSocket协议:为你快速解答WebSocket热门疑问
- 手摸手教你使用WebSocket[其实WebSocket也不难]
- springboot项目中使用websocket(javax.websocket包下的)
- WebSocket的故事(六)—— Springboot中,实现更灵活的WebSocket
- Spring Boot系列21 Spring Websocket实现websocket集群方案讨论
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
写给大忙人看的Java SE 8
【美】Cay S. Horstmann(凯.S.霍斯曼) 编 / 张若飞 / 电子工业出版社 / 2014-11 / 59.00元
《写给大忙人看的Java SE 8》向Java开发人员言简意赅地介绍了Java 8 的许多新特性(以及Java 7 中许多未被关注的特性),《写给大忙人看的Java SE 8》延续了《快学Scala》“不废话”的风格。 《写给大忙人看的Java SE 8》共分为9章。第1章讲述了lambda表达式的全部语法;第2章给出了流的完整概述;第3章给出了使用lambda表达式设计库的有效技巧;第4章......一起来看看 《写给大忙人看的Java SE 8》 这本书的介绍吧!