websocke-W\H

What

websocket是基于TCP的一种新的协议。webSocket最初在HTML5规范中被引用为TCP连接,作为基于TCP的套接字API的占位符。它实现了浏览器与服务器全双工(full-duplex)通信。其本质是保持TCP连接,在浏览器和服务端通过Socket进行通信。
websocket协议与HTTP协议有交集,不是全部。
Html5是指新的API,新技术。Http协议本身只有1.0,1.1,与Html本身没有直接关系。

Why

Websocket是一个持久化的协议,相对于HTTP这种非持久的协议来说。

  • Http: socket实现,单工通道(浏览器只发起,服务端只做响应),短连接,请求响应
  • Websocket:socket实现,双工通道,请求响应,推送。socket创建连接,不断开

How

服务端:
1 服务端开启socket,监听IP和端口
3 允许连接
5 服务端接收到特殊值【加密sha1,特殊值,migic string=“258EAFA5-E914-47DA-95CA-C5AB0DC85B11”】
6 加密后的值发送给客户端

客户端:
2. 客户端发起连接请求(IP和端口)
4 客户端生成一个xxx,【加密sha1,特殊值,migic string=“258EAFA5-E914-47DA-95CA-C5AB0DC85B11”】,向服务端发送一段特殊值
7 客户端接收到加密的值

migic string值固定

原理对比:

ajax轮询:浏览器隔个几秒就发送一次请求,询问服务器是否有新信息。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值