Skip to content

Commit 4902653

Browse files
committed
fixed:heart insert incorrect
added:option method for http
1 parent 21c5958 commit 4902653

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

XEngine_Source/XEngine_APPService/XEngine_AuthorizeService/Authorize_HttpTask.cpp

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,13 @@ XHTHREAD CALLBACK XEngine_AuthService_HttpThread(XPVOID lParam)
4848
return 0;
4949
}
5050

51-
bool XEngine_Client_HttpTask(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, RFCCOMPONENTS_HTTP_REQPARAM *pSt_HTTPParament)
51+
bool XEngine_Client_HttpTask(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParament)
5252
{
5353
int nSDLen = 4096;
5454
XCHAR tszSDBuffer[4096];
5555
LPCXSTR lpszMethodPost = _X("POST");
5656
LPCXSTR lpszMethodGet = _X("GET");
57+
LPCXSTR lpszMethodOPtion = _X("OPTION");
5758

5859
memset(tszSDBuffer, '\0', sizeof(tszSDBuffer));
5960

@@ -64,11 +65,11 @@ bool XEngine_Client_HttpTask(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
6465

6566
//是否在黑名单
6667
bool bSuccess = false;
67-
if (0 == st_AuthConfig.st_XSql.nDBType)
68+
if (0 == st_AuthConfig.st_XSql.nDBType)
6869
{
6970
bSuccess = DBModule_SQLite_BannedExist(&st_Banned); //IP地址是否在黑名单
7071
}
71-
else
72+
else
7273
{
7374
bSuccess = DBModule_MySQL_BannedExist(&st_Banned);//IP地址是否在黑名单
7475
}
@@ -251,7 +252,7 @@ bool XEngine_Client_HttpTask(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
251252
memset(tszURLValue, '\0', sizeof(tszURLValue));
252253

253254
BaseLib_String_GetKeyValue(pptszList[0], "=", tszURLKey, tszURLValue);
254-
if (0 == _tcsxnicmp(lpszAPIVerDCode, tszURLValue, _tcsxlen(lpszAPIVerDCode)) || 0 == _tcsxnicmp(lpszAPIVerTime, tszURLValue, _tcsxlen(lpszAPIVerTime)) ||
255+
if (0 == _tcsxnicmp(lpszAPIVerDCode, tszURLValue, _tcsxlen(lpszAPIVerDCode)) || 0 == _tcsxnicmp(lpszAPIVerTime, tszURLValue, _tcsxlen(lpszAPIVerTime)) ||
255256
0 == _tcsxnicmp(lpszAPIVerNotice, tszURLValue, _tcsxlen(lpszAPIVerNotice)))
256257
{
257258
XEngine_AuthorizeHTTP_GetTask(lpszClientAddr, pptszList, nListCount);
@@ -262,6 +263,12 @@ bool XEngine_Client_HttpTask(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int
262263
}
263264
BaseLib_Memory_Free((XPPPMEM)&pptszList, nListCount);
264265
}
266+
else if (0 == _tcsxnicmp(lpszMethodOPtion, pSt_HTTPParament->tszHttpMethod, _tcsxlen(lpszMethodOPtion)))
267+
{
268+
Protocol_Packet_HttpComm(tszSDBuffer, &nSDLen);
269+
XEngine_Client_TaskSend(lpszClientAddr, tszSDBuffer, nSDLen, XENGINE_AUTH_APP_NETTYPE_HTTP);
270+
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送的OPTION方法处理成功.此为心跳请求"), lpszClientAddr);
271+
}
265272
else
266273
{
267274
Protocol_Packet_HttpComm(tszSDBuffer, &nSDLen, 405, "method not allow");

XEngine_Source/XEngine_APPService/XEngine_AuthorizeService/Authorize_Net.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ void CALLBACK XEngine_Client_TCPHeart(LPCXSTR lpszClientAddr, XSOCKET hSocket, i
2626
//////////////////////////////////////////////////////////////////////////
2727
bool CALLBACK XEngine_Client_WSAccept(LPCXSTR lpszClientAddr, XSOCKET hSocket, XPVOID lParam)
2828
{
29-
HelpComponents_Datas_CreateEx(xhWSHeart, lpszClientAddr, 0);
3029
RfcComponents_WSPacket_CreateEx(xhWSPacket, lpszClientAddr, 0);
30+
SocketOpt_HeartBeat_InsertAddrEx(xhWSHeart, lpszClientAddr);
3131
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("WS客户端:%s,进入服务器"), lpszClientAddr);
3232
return true;
3333
}
@@ -67,7 +67,7 @@ void CALLBACK XEngine_Client_WSHeart(LPCXSTR lpszClientAddr, XSOCKET hSocket, in
6767
bool CALLBACK XEngine_Client_HttpAccept(LPCXSTR lpszClientAddr, XSOCKET hSocket, XPVOID lParam)
6868
{
6969
HttpProtocol_Server_CreateClientEx(xhHttpPacket, lpszClientAddr, 0);
70-
RfcComponents_WSPacket_CreateEx(xhHTTPHeart, lpszClientAddr, 0);
70+
SocketOpt_HeartBeat_InsertAddrEx(xhHTTPHeart, lpszClientAddr);
7171
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,进入服务器"), lpszClientAddr);
7272
return true;
7373
}

0 commit comments

Comments
 (0)