WebSocket的消息帧格式包含以下边界信息:
- FIN(1 bit):表示是否为消息的最后一帧,如果是最后一帧则为1,否则为0。
- RSV1/RSV2/RSV3(各占1 bit):用于扩展预留字段,默认情况下应该为0。
- Opcode(4 bits):指定了消息的类型,如文本、二进制数据、连接关闭等。常见的类型有Text Frame(0x1)、Binary Frame(0x2)、Connection Close(0x8)等。
- Mask(1 bit):表示是否对负载数据进行掩码处理,客户端发送给服务器的消息需要进行掩码处理,服务器发送给客户端的消息不需要进行掩码处理。
- Payload Length(7 bits或7+16 bits或7+64 bits):表示负载数据长度。如果小于或等于125字节,则使用7位来表示长度;如果大于125字节且小于等于65535字节,则使用7位+16位来表示长度;如果大于65535字节,则使用7位+64位来表示长度。
- Masking Key(32 bits):当Mask标志位设置为1时,在负载数据前会包含一个32位的Masking Key,用于对负载数据进行解码操作。
这些边界信息在WebSocket通信中用于确定每个消息帧的开始和结束,并提供了必要的元数据和控制信息。
内容由零声教学AI助手提供,问题来源于学员提问