赞
踩
websocket是什么呢,websocket是一个和服务器通信的新的协议,一般而言,浏览器和服务器通信最常用的是http协议,但是http协议是无状态的,每次浏览器请求信息,服务器返回信息后这个浏览器和服务器通信的信道就被关闭了,这样使得服务器如果想主动给浏览器发送信息变得不可能了,服务器推技术在http时代的解决方案一个是客户端去轮询,或是使用comet技术,而websocket则和一般的socket一样,使得浏览器和服务器建立了一个双工的通道。
具体的websocket协议在rfc6455里面有,这里简要说明一下。websocket通信需要先有个握手的过程,使得协议由http转变为webscoket协议,然后浏览器和服务器就可以利用这个socket来通信了。
首先浏览器发送握手信息,要求协议转变为websocket
get / http/1.1
host: example.com
upgrade: websocket
connection: upgrade
sec-websocket-key: dghlihnhbxbszsbub25jzq==
origin:
服务器接收到信息后,取得其中的sec-websocket-key,将他和一个固定的字符串258eafa5-e914-47da-95ca-c5ab0dc85b11做拼接,得到的字符串先用sha1做一下转换&
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。