Skip to content

Commit 9a45b11

Browse files
committed
improved:http send buffer
1 parent eaa2d29 commit 9a45b11

3 files changed

Lines changed: 15 additions & 17 deletions

File tree

XEngine_Release/XEngine_Config/XEngine_VersionList.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"XVersionList": [
3+
"V1.6.0.1001 Build20260206",
34
"V1.5.0.1001 Build20250704",
45
"V1.4.0.1001 Build20250612",
56
"V1.3.0.1001 Build20240914",

XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_HTTPTask.cpp

Lines changed: 5 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -57,34 +57,23 @@ XHTHREAD XCALLBACK XEngine_HTTPTask_Thread(XPVOID lParam)
5757
}
5858
bool XEngine_HTTPTask_Handle(RFCCOMPONENTS_HTTP_REQPARAM* pSt_HTTPParam, LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen, XCHAR** pptszListHdr, int nHdrCount)
5959
{
60-
int nLen = 4096;
60+
int nMSGLen = XPATH_4MAX;
6161
LPCXSTR lpszMethodPost = _X("POST");
6262
LPCXSTR lpszMethodGet = _X("GET");
63-
XCHAR tszMsgBuffer[4096];
64-
RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam; //发送给客户端的参数
65-
66-
memset(tszMsgBuffer, '\0', sizeof(tszMsgBuffer));
67-
memset(&st_HDRParam, '\0', sizeof(RFCCOMPONENTS_HTTP_HDRPARAM));
68-
69-
st_HDRParam.nHttpCode = 200; //HTTP CODE码
70-
st_HDRParam.bIsClose = true; //收到回复后就关闭
63+
XCHAR tszMSGBuffer[XPATH_4MAX] = {};
7164
//得到客户端请求的方法
7265
if (0 == _tcsxnicmp(lpszMethodPost, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszMethodPost)))
7366
{
74-
//编写自己的代码
75-
HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nLen, &st_HDRParam);
7667
//打包完毕后才能发送给客户端
77-
XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nLen);
68+
XEngine_Network_Send(lpszClientAddr, lpszMsgBuffer, nMsgLen);
7869
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送POST请求给服务器"), lpszClientAddr);
7970
}
8071
else if (0 == _tcsxnicmp(lpszMethodGet, pSt_HTTPParam->tszHttpMethod, _tcsxlen(lpszMethodGet)))
8172
{
8273
//编写自己的代码
83-
LPCXSTR lpszMsgBuffer = _X("Hello World");
84-
//通过此函数来打包成我们要发送的数据,就是打包成一条标准的HTTP协议
85-
HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszMsgBuffer, &nLen, &st_HDRParam, lpszMsgBuffer, _tcsxlen(lpszMsgBuffer));
74+
LPCXSTR lpszTMPBuffer = _X("Hello World");
8675
//打包完毕后才能发送给客户端
87-
XEngine_Network_Send(lpszClientAddr, tszMsgBuffer, nLen);
76+
XEngine_Network_Send(lpszClientAddr, lpszTMPBuffer, _tcsxlen(lpszTMPBuffer));
8877
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_INFO, _X("HTTP客户端:%s,发送GET请求给服务器"), lpszClientAddr);
8978
}
9079
else

XEngine_Source/XEngine_ServiceApp/XEngine_HttpApp/XEngine_Network.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,8 +53,16 @@ void XEngine_Network_Close(LPCXSTR lpszClientAddr, bool bHeart)
5353
//////////////////////////////////////////////////////////////////////////
5454
bool XEngine_Network_Send(LPCXSTR lpszClientAddr, LPCXSTR lpszMsgBuffer, int nMsgLen)
5555
{
56+
int nSDLen = XPATH_4MAX;
57+
XCHAR tszSDBuffer[XPATH_4MAX] = {};
58+
RFCCOMPONENTS_HTTP_HDRPARAM st_HDRParam = {}; //发送给客户端的参数
59+
//通过此函数来打包成我们要发送的数据,就是打包成一条标准的HTTP协议
60+
st_HDRParam.nHttpCode = 200; //HTTP CODE码
61+
st_HDRParam.bIsClose = true; //收到回复后就关闭
62+
63+
HttpProtocol_Server_SendMsgEx(xhHTTPPacket, tszSDBuffer, &nSDLen, &st_HDRParam, lpszMsgBuffer, nMsgLen);
5664
//发送数据给指定客户端
57-
if (!NetCore_TCPXCore_SendEx(xhHTTPSocket, lpszClientAddr, lpszMsgBuffer, nMsgLen))
65+
if (!NetCore_TCPXCore_SendEx(xhHTTPSocket, lpszClientAddr, tszSDBuffer, nSDLen))
5866
{
5967
XLOG_PRINT(xhLog, XENGINE_HELPCOMPONENTS_XLOG_IN_LOGLEVEL_ERROR, _X("HTTP客户端:%s,发送数据失败,错误:%lX"), lpszClientAddr, NetCore_GetLastError());
6068
return false;

0 commit comments

Comments
 (0)