添加大小写处理
This commit is contained in:
parent
58c82113e3
commit
29e74d78f8
@ -33,6 +33,7 @@ const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT16 = 126;
|
|||||||
const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT64 = 127;
|
const unsigned char WEBSOCKET_PAYLOAD_LEN_UINT64 = 127;
|
||||||
|
|
||||||
const char* WEB_SOCKET_KEY = "Sec-WebSocket-Key: ";
|
const char* WEB_SOCKET_KEY = "Sec-WebSocket-Key: ";
|
||||||
|
const char* WEB_SOCKET_KEY2 = "Sec-Websocket-Key: ";
|
||||||
|
|
||||||
namespace a8
|
namespace a8
|
||||||
{
|
{
|
||||||
@ -98,8 +99,7 @@ namespace a8
|
|||||||
if (!pend) {
|
if (!pend) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
char* p1 = strstr(buf + offset, WEB_SOCKET_KEY);
|
if (strstr(buf + offset, WEB_SOCKET_KEY) || strstr(buf + offset, WEB_SOCKET_KEY2)) {
|
||||||
if (p1) {
|
|
||||||
ProcessWsHandShake(buf, offset, buflen);
|
ProcessWsHandShake(buf, offset, buflen);
|
||||||
} else {
|
} else {
|
||||||
ProcessHttpHandShake(buf, offset, buflen);
|
ProcessHttpHandShake(buf, offset, buflen);
|
||||||
@ -113,8 +113,13 @@ namespace a8
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
std::string server_key;
|
std::string server_key;
|
||||||
|
const char* key = WEB_SOCKET_KEY;
|
||||||
{
|
{
|
||||||
char* p1 = strstr(buf + offset, WEB_SOCKET_KEY);
|
char* p1 = strstr(buf + offset, WEB_SOCKET_KEY);
|
||||||
|
if (!p1) {
|
||||||
|
p1 = strstr(buf + offset, WEB_SOCKET_KEY2);
|
||||||
|
key = WEB_SOCKET_KEY2;
|
||||||
|
}
|
||||||
if (p1) {
|
if (p1) {
|
||||||
p1 += strlen(WEB_SOCKET_KEY);
|
p1 += strlen(WEB_SOCKET_KEY);
|
||||||
char* p2 = strstr(p1 , "\r\n");
|
char* p2 = strstr(p1 , "\r\n");
|
||||||
@ -131,7 +136,7 @@ namespace a8
|
|||||||
std::string response = "HTTP/1.1 101 Web Socket Protocol Handshake\r\n"
|
std::string response = "HTTP/1.1 101 Web Socket Protocol Handshake\r\n"
|
||||||
"Upgrade: websocket\r\n"
|
"Upgrade: websocket\r\n"
|
||||||
"Connection: Upgrade\r\n"
|
"Connection: Upgrade\r\n"
|
||||||
"Sec-WebSocket-Accept: " + hash_data + "\r\n" +
|
+ key + hash_data + "\r\n" +
|
||||||
"\r\n";
|
"\r\n";
|
||||||
SendBuff(response.data(), response.size());
|
SendBuff(response.data(), response.size());
|
||||||
handshook_ = true;
|
handshook_ = true;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user