Payload length
如果值是127,则后面8个字节形成的64bits无符号整型数的值是payload的真实长度。
int Websocket_Request::fetch_payload_length(char *msg, int &pos){
payload_length_ = msg[pos] & 0x7f;
pos++;
if(payload_length_ == 126){
uint16_t length = 0;
memcpy(&length, msg + pos, 2);
pos += 2;
payload_length_ = ntohs(length);
}
else if(payload_length_ == 127){
uint32_t length = 0;
memcpy(&length, msg + pos, 4);
pos += 4;
payload_length_ = ntohl(length);
}
Payload length
如果值是127,则后面8个字节形成的64bits无符号整型数的值是payload的真实长度。
int Websocket_Request::fetch_payload_length(char *msg, int &pos){
payload_length_ = msg[pos] & 0x7f;
pos++;
if(payload_length_ == 126){
uint16_t length = 0;
memcpy(&length, msg + pos, 2);
pos += 2;
payload_length_ = ntohs(length);
}
else if(payload_length_ == 127){
uint32_t length = 0;
memcpy(&length, msg + pos, 4);
pos += 4;
payload_length_ = ntohl(length);
}