作者:马婷婷0514_761 | 来源:互联网 | 2023-08-19 09:32
ubuntu下python2.76windowspython2.79,chrome37firefox35通过代码是在别人(cddn有人提问)基础上改的,主要改动了parseda
ubuntu下python2.76
windows python 2.79, chrome37 firefox35通过
代码是在别人(cddn有人提问)基础上改的, 主要改动了parsedata和sendmessage这2个函数.
改代码参考下面了这段文档. 主要是第5条, 发送的数据长度分别是 8bit和 16bit和 64 bit(即 127, 65535,和2^64-1)三种情况
发送和收取是一样的, 例如
1.长度小于125时(由于使用126, 127用作标志位.)
2. 数据长度在128-65525之间时, Payload Length位设为126, 后面额外使用16bit表示长度(前面的126不再是长度的一部分)
3.数据长度在65526-2^64-1之间时, Payload Length位设为127, 后面额外使用64bit表示长度(前面的127不再是长度的一部分)
- Fin (bit 0): determines if this is the last frame in the message. This would be set to 1 on the end of a series of frames, or in a single-frame message, it would be set to 1 as it is both the first and last frame.
- RSV1, RSV2, RSV3 (bits 1-3): these three bits are reserved for websocket extensions, and should be 0 unless a specific extension requires the use of any of these bytes.
-
Opcode (bits 4-7): these four bits deterimine the type of the frame. Control frames communicate WebSocket st