1.Introduction to WebSocket
来源:互联网 发布:钰恒电子秤 数据采集 编辑:程序博客网 时间:2024/05/21 07:13
官网英文参考:
http://docs.oracle.com/javaee/7/tutorial/doc/websocket001.htm#BABDABHF
中文解析:
Websocket 应用,server作为一个Websocket 端点,client 通过server的URL地址连接到server.一旦server和client连接建立,那就是对称连接。server和client在连接open的时候,可以再任何时候,相互发送信息。一个client通常只连接一个server,server支持多个client连接。
Websocket协议分为两个部分(握手和数据交换)。客户端通过URL地址初始化握手请求,握手协议兼容目前的HTTP协议。server收到请求,将其理解为一个HTTP连接升级请求。
客户端发起的连接握手请求如下图:
GET /path/to/websocket/endpoint HTTP/1.1Host: localhostUpgrade: websocketConnection: UpgradeSec-WebSocket-Key: xqBt3ImNzJbYqRINxEFlkg==Origin: http://localhostSec-WebSocket-Version: 13
服务端的回复请求如:
HTTP/1.1 101 Switching ProtocolsUpgrade: websocketConnection: UpgradeSec-WebSocket-Accept: K7DJLdLooIwIG/MOpvWFB3y3FE8=
server通过一个方法,利用Sec-WebSocket-Key来产生Sec-WebSocket-Accept。客户端通过同样的方法,利用Sec-WebSocket-Key 产生Sec-WebSocket-Accept。如果接收的回复值和自己计算的值是一样的,那么就建立连接。握手成功之后,server和client就可以发送消息。
Websocket支持文本格式和二进制格式,Websocket的方法有close,ping,pong.ping,pong 连个方法可以包含数据。
Websocket 端点通过URIS区分表示,具体有下面两种方式:
ws://host:port/path?querywss://host:port/path?query
ws 表示非加密连接,wss 表示加密连接,端口是可以指定的。非加密通信默认是80端口,加密连接默认是443端口,path 是server 端点的路径,query是可选项。
主流浏览器都实现Websocket协议,而且提供javascript 接口(连接到server 端点,发送信息,回调)
0 0
- 1.Introduction to WebSocket
- RFC6455-The WebSocket protocol 之一:1. Introduction
- Chapter 1. Introduction to Vectors
- Chapter 1. Introduction to Web Automation
- Introduction to CGI Variables
- Introduction to Rave Reports
- Introduction to RSS
- Introduction to NMock
- An Introduction to Struts
- Links:Introduction To TDD
- Introduction to Smartphone
- Introduction to C# interface
- 第一章: Introduction to Objects
- Introduction to IoC
- An introduction to LaTeX2e
- About Introduction to Algorithms
- Introduction to MySQL Cluster
- Introduction To Alpha Blending
- 班级通讯录
- 图片压缩
- 黑马程序员-----线程的概述与应用(黑马视频)
- Winsock Programming Basic
- Linux Command
- 1.Introduction to WebSocket
- HDU 2040 亲和数
- 黑马程序员-----多线程运行安全(黑马视频)
- HDU-1097-a^b最后一位
- redis的简易安装
- windows程序设计绘图模式及映射模式
- 身份证复印件扫描件必须签字或加水印防止被盗用
- 黑马程序员-----静态static同步锁(黑马视频)
- Android获取手机内存状态