图1
如图1,乍⼀看可能看不懂,我先来解释⼀下:
图2
图2中封装了⼀个send⽅法,⽤于服务器发送数据,⾸先判断数据data是否为字符串,当data是字符串时,opcode=1,当data是⼆进制时,opcode=2。这⾥opcode与fin也是有关系的,fin=1表⽰最后⼀帧数据,等于0表⽰后⾯还有数据,不是第⼀帧数据的
opcode=0,opcode=0代表后续帧。
图3
图4
mask表⽰是否需要掩码,只适⽤于客户端发送给服务器的消息(mask=1),这⾥是服务器发送数据,所以mask=0,offset=2,表⽰最初的两个字节(⼀共16位)。前四位中fin可以是1或者0,rsv1可以为1但是为了演⽰⽅便只考虑0、rsv2和rsv3必须为0,第五位到第⼋位表⽰opcode,这是⼀个可以⽤4位⼆进制表⽰的数字,所以前⼋位可以⽤图4中的区域2表⽰。
前端websocket怎么用
当数据的长度<=125,接下来⼀个字节直接⽤来表⽰数据长度;
图5
与服务器发送数据的区别:
offset=6,初始化有6个字节;图6
图7

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。