From 2ebb8217f43b69f491620423ea4d5d5944d1f91d Mon Sep 17 00:00:00 2001 From: yincheng.zhong <634916154@qq.com> Date: 星期六, 05 七月 2025 22:43:58 +0800 Subject: [PATCH] 格式化部分代码 --- keil/include/components/internet/src/HTTPClient.c | 340 ++++++++++++++++++++++++++++---------------------------- 1 files changed, 170 insertions(+), 170 deletions(-) diff --git a/keil/include/components/internet/src/HTTPClient.c b/keil/include/components/internet/src/HTTPClient.c index 2bdcdef..23b5be5 100644 --- a/keil/include/components/internet/src/HTTPClient.c +++ b/keil/include/components/internet/src/HTTPClient.c @@ -112,7 +112,7 @@ else { HIDO_DebugString((HIDO_CHAR *)_pu8Data, _u32Len); - + if(l_fnHTTPResponseCallback != HIDO_NULL) { l_fnHTTPResponseCallback(_u32RespCode, _pu8Data, _u32Len, l_pHTTPArg); @@ -152,110 +152,136 @@ { switch (_eEvent) { - case SOCKET_EVENT_CONNECT_FAILED: + case SOCKET_EVENT_CONNECT_FAILED: + { + if(HTTP_CLIENT_STATE_CONNECTING == l_eHTTPClientState) { - if(HTTP_CLIENT_STATE_CONNECTING == l_eHTTPClientState) + if(l_u32HTTPTryCnt < 3) { - if(l_u32HTTPTryCnt < 3) - { - l_u32HTTPTryCnt++; - Socket_Connect(l_i32HTTPClientSockID, l_acHTTPHost, l_u32HTTPPort); - } - else - { - l_eHTTPClientState = HTTP_CLIENT_STATE_IDLE; - HTTPClient_Response(408, HIDO_NULL, 0); - } - } - - break; - } - case SOCKET_EVENT_CONNECTED: - { - if(HTTP_CLIENT_STATE_CONNECTING == l_eHTTPClientState) - { - l_eHTTPClientState = HTTP_CLIENT_STATE_CONNECTED; - l_eHTTPRecvState = HTTP_RECV_STATE_HEAD; - l_u32HTTPRecvBuffLen = 0; - - if(l_eHTTPMethod != HTTP_METHOD_POST_FILE) - { - Socket_Send(l_i32HTTPClientSockID, (HIDO_UINT8 *)l_acHTTPSendBuff, l_u32HTTPSendBuffLen); - } - } - - break; - } - case SOCKET_EVENT_CLOSED: - { - if(l_eHTTPClientState != HTTP_CLIENT_STATE_IDLE) - { - HIDO_TimerCancel(l_u32HTTPClientTimerID); - l_eHTTPClientState = HTTP_CLIENT_STATE_IDLE; - - HTTPClient_Response(l_u32HTTPRespCode, l_pu8HTTPRespBody, l_u32HTTPContentLength); + l_u32HTTPTryCnt++; + Socket_Connect(l_i32HTTPClientSockID, l_acHTTPHost, l_u32HTTPPort); } else { - HIDO_TimerCancel(l_u32HTTPClientTimerID); + l_eHTTPClientState = HTTP_CLIENT_STATE_IDLE; + HTTPClient_Response(408, HIDO_NULL, 0); + } + } + + break; + } + case SOCKET_EVENT_CONNECTED: + { + if(HTTP_CLIENT_STATE_CONNECTING == l_eHTTPClientState) + { + l_eHTTPClientState = HTTP_CLIENT_STATE_CONNECTED; + l_eHTTPRecvState = HTTP_RECV_STATE_HEAD; + l_u32HTTPRecvBuffLen = 0; + + if(l_eHTTPMethod != HTTP_METHOD_POST_FILE) + { + Socket_Send(l_i32HTTPClientSockID, (HIDO_UINT8 *)l_acHTTPSendBuff, l_u32HTTPSendBuffLen); + } + } + + break; + } + case SOCKET_EVENT_CLOSED: + { + if(l_eHTTPClientState != HTTP_CLIENT_STATE_IDLE) + { + HIDO_TimerCancel(l_u32HTTPClientTimerID); + l_eHTTPClientState = HTTP_CLIENT_STATE_IDLE; + + HTTPClient_Response(l_u32HTTPRespCode, l_pu8HTTPRespBody, l_u32HTTPContentLength); + } + else + { + HIDO_TimerCancel(l_u32HTTPClientTimerID); + } + + break; + } + case SOCKET_EVENT_RECV_DATA: + { + HIDO_INT32 i32Ret = 0; + HIDO_UINT32 u32RecvLen = 0; + + do + { + if (l_u32HTTPRecvBuffLen >= HTTP_RECV_BUFF_SIZE) + { + Socket_Close(l_i32HTTPClientSockID); + + break; } - break; - } - case SOCKET_EVENT_RECV_DATA: - { - HIDO_INT32 i32Ret = 0; - HIDO_UINT32 u32RecvLen = 0; + i32Ret = Socket_Recv(l_i32HTTPClientSockID, (HIDO_UINT8 *)(l_acHTTPRecvBuff + l_u32HTTPRecvBuffLen), + HTTP_RECV_BUFF_SIZE - l_u32HTTPRecvBuffLen, &u32RecvLen); - do + if ((i32Ret != HIDO_OK) || (0 == u32RecvLen)) { - if (l_u32HTTPRecvBuffLen >= HTTP_RECV_BUFF_SIZE) + break; + } + + l_u32HTTPRecvBuffLen += u32RecvLen; + + if (HTTP_RECV_STATE_HEAD == l_eHTTPRecvState) + { + /* 收到"\r\n\r\n */ + l_pu8HTTPRespBody = (HIDO_UINT8 *)HIDO_UtilStrnstr(l_acHTTPRecvBuff, "\r\n\r\n", u32RecvLen); + if (l_pu8HTTPRespBody != HIDO_NULL) { - Socket_Close(l_i32HTTPClientSockID); + HIDO_CHAR *pcKeyName = HIDO_NULL; + HIDO_UINT32 u32Range0 = 0; + HIDO_UINT32 u32Range1 = 0; + HIDO_UINT32 u32RangeAll = 0; - break; - } + l_pu8HTTPRespBody += 4; - i32Ret = Socket_Recv(l_i32HTTPClientSockID, (HIDO_UINT8 *)(l_acHTTPRecvBuff + l_u32HTTPRecvBuffLen), - HTTP_RECV_BUFF_SIZE - l_u32HTTPRecvBuffLen, &u32RecvLen); - - if ((i32Ret != HIDO_OK) || (0 == u32RecvLen)) - { - break; - } - - l_u32HTTPRecvBuffLen += u32RecvLen; - - if (HTTP_RECV_STATE_HEAD == l_eHTTPRecvState) - { - /* 收到"\r\n\r\n */ - l_pu8HTTPRespBody = (HIDO_UINT8 *)HIDO_UtilStrnstr(l_acHTTPRecvBuff, "\r\n\r\n", u32RecvLen); - if (l_pu8HTTPRespBody != HIDO_NULL) + if (HIDO_UtilParseFormat((HIDO_UINT8 *) l_acHTTPRecvBuff, u32RecvLen, "HTTP/1.1 %d %*\r\n", + &l_u32HTTPRespCode) != 2) { - HIDO_CHAR *pcKeyName = HIDO_NULL; - HIDO_UINT32 u32Range0 = 0; - HIDO_UINT32 u32Range1 = 0; - HIDO_UINT32 u32RangeAll = 0; + Socket_Close(l_i32HTTPClientSockID); - l_pu8HTTPRespBody += 4; + break; + } - if (HIDO_UtilParseFormat((HIDO_UINT8 *) l_acHTTPRecvBuff, u32RecvLen, "HTTP/1.1 %d %*\r\n", - &l_u32HTTPRespCode) != 2) + pcKeyName = HIDO_UtilStrnstr(l_acHTTPRecvBuff, "Content-Length: ", u32RecvLen); + if (pcKeyName != HIDO_NULL) + { + if (HIDO_UtilParseFormat((HIDO_UINT8 *) pcKeyName, + u32RecvLen - (pcKeyName - l_acHTTPRecvBuff), "Content-Length: %d\r\n", + &l_u32HTTPContentLength) != 1) { Socket_Close(l_i32HTTPClientSockID); - + break; } + } + else + { + Socket_Close(l_i32HTTPClientSockID); - pcKeyName = HIDO_UtilStrnstr(l_acHTTPRecvBuff, "Content-Length: ", u32RecvLen); + break; + } + + /* 获取文件分片信息 */ + if(HTTP_METHOD_GET_FILE == l_eHTTPMethod) + { + HIDO_DataStruct stETag; + + memset(&l_stHTTPGetFileResponse, 0, sizeof(l_stHTTPGetFileResponse)); + + pcKeyName = HIDO_UtilStrnstr(l_acHTTPRecvBuff, "Content-Range: ", u32RecvLen); if (pcKeyName != HIDO_NULL) { if (HIDO_UtilParseFormat((HIDO_UINT8 *) pcKeyName, - u32RecvLen - (pcKeyName - l_acHTTPRecvBuff), "Content-Length: %d\r\n", - &l_u32HTTPContentLength) != 1) + u32RecvLen - (pcKeyName - l_acHTTPRecvBuff), "Content-Range: bytes %d-%d/%d\r\n", + &u32Range0, &u32Range1, &u32RangeAll) != 3) { Socket_Close(l_i32HTTPClientSockID); - + break; } } @@ -266,85 +292,59 @@ break; } - /* 获取文件分片信息 */ - if(HTTP_METHOD_GET_FILE == l_eHTTPMethod) + l_stHTTPGetFileResponse.m_u32RangeBegin = u32Range0; + l_stHTTPGetFileResponse.m_u32RangeEnd = u32Range1; + l_stHTTPGetFileResponse.m_u32RangeTotal = u32RangeAll; + + pcKeyName = HIDO_UtilStrnstr(l_acHTTPRecvBuff, "ETag: ", u32RecvLen); + if (pcKeyName != HIDO_NULL) { - HIDO_DataStruct stETag; - - memset(&l_stHTTPGetFileResponse, 0, sizeof(l_stHTTPGetFileResponse)); - - pcKeyName = HIDO_UtilStrnstr(l_acHTTPRecvBuff, "Content-Range: ", u32RecvLen); - if (pcKeyName != HIDO_NULL) - { - if (HIDO_UtilParseFormat((HIDO_UINT8 *) pcKeyName, - u32RecvLen - (pcKeyName - l_acHTTPRecvBuff), "Content-Range: bytes %d-%d/%d\r\n", - &u32Range0, &u32Range1, &u32RangeAll) != 3) - { - Socket_Close(l_i32HTTPClientSockID); - - break; - } - } - else + if (HIDO_UtilParseFormat((HIDO_UINT8 *) pcKeyName, + u32RecvLen - (pcKeyName - l_acHTTPRecvBuff), "ETag: %p\r\n", &stETag) != 1) { Socket_Close(l_i32HTTPClientSockID); break; } - - l_stHTTPGetFileResponse.m_u32RangeBegin = u32Range0; - l_stHTTPGetFileResponse.m_u32RangeEnd = u32Range1; - l_stHTTPGetFileResponse.m_u32RangeTotal = u32RangeAll; - - pcKeyName = HIDO_UtilStrnstr(l_acHTTPRecvBuff, "ETag: ", u32RecvLen); - if (pcKeyName != HIDO_NULL) - { - if (HIDO_UtilParseFormat((HIDO_UINT8 *) pcKeyName, - u32RecvLen - (pcKeyName - l_acHTTPRecvBuff), "ETag: %p\r\n", &stETag) != 1) - { - Socket_Close(l_i32HTTPClientSockID); - - break; - } - } - else - { - Socket_Close(l_i32HTTPClientSockID); - - break; - } - - if((stETag.m_u32Len + 1) < sizeof(l_stHTTPGetFileResponse.m_acETag)) - { - memcpy(l_stHTTPGetFileResponse.m_acETag, stETag.m_pData, stETag.m_u32Len); - } } - - l_u32HTTPRecvTotalLen = l_pu8HTTPRespBody - (HIDO_UINT8 *)l_acHTTPRecvBuff + l_u32HTTPContentLength; - l_eHTTPRecvState = HTTP_RECV_STATE_BODY; - - if (l_u32HTTPRecvBuffLen >= l_u32HTTPRecvTotalLen) + else { Socket_Close(l_i32HTTPClientSockID); + + break; + } + + if((stETag.m_u32Len + 1) < sizeof(l_stHTTPGetFileResponse.m_acETag)) + { + memcpy(l_stHTTPGetFileResponse.m_acETag, stETag.m_pData, stETag.m_u32Len); } } - } - else - { + + l_u32HTTPRecvTotalLen = l_pu8HTTPRespBody - (HIDO_UINT8 *)l_acHTTPRecvBuff + l_u32HTTPContentLength; + l_eHTTPRecvState = HTTP_RECV_STATE_BODY; + if (l_u32HTTPRecvBuffLen >= l_u32HTTPRecvTotalLen) { Socket_Close(l_i32HTTPClientSockID); } } } - while(HIDO_TRUE); + else + { + if (l_u32HTTPRecvBuffLen >= l_u32HTTPRecvTotalLen) + { + Socket_Close(l_i32HTTPClientSockID); + } + } + } + while(HIDO_TRUE); - break; - } - default: - { - break; - } + break; + } + default: + { + break; + } } } @@ -358,7 +358,7 @@ * Modified Date: : 2020年7月1日 *******************************************************************************/ HIDO_INT32 HTTPClient_ParseUrl(HIDO_CHAR *_pcUrl, HIDO_CHAR *_pcHost, HIDO_UINT32 _u32HostSize, - HIDO_CHAR *_pcPath, HIDO_UINT32 _u32PathSize, HIDO_UINT32 *_pu32Port) + HIDO_CHAR *_pcPath, HIDO_UINT32 _u32PathSize, HIDO_UINT32 *_pu32Port) { HIDO_DataStruct stHost; HIDO_DataStruct stPath; @@ -467,15 +467,15 @@ HIDO_UtilSnprintf(l_acHTTPUrl, sizeof(l_acHTTPUrl), _pcUrl); l_u32HTTPSendBuffLen = HIDO_UtilSnprintf(l_acHTTPSendBuff, sizeof(l_acHTTPSendBuff), - "POST /%s HTTP/1.1\r\n" - "Host: %s\r\n" - "User-Agent: QUECTEL_MODULE\r\n" - "Connection: Keep-Alive\r\n" - "Content-Type: application/json\r\n" - "Accept: */*\r\n" - "Content-Length: %u\r\n" - "\r\n" - "%s" , l_acHTTPPath, l_acHTTPHost, _u32BodyLen, _pcBody); + "POST /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "User-Agent: QUECTEL_MODULE\r\n" + "Connection: Keep-Alive\r\n" + "Content-Type: application/json\r\n" + "Accept: */*\r\n" + "Content-Length: %u\r\n" + "\r\n" + "%s" , l_acHTTPPath, l_acHTTPHost, _u32BodyLen, _pcBody); l_fnHTTPResponseCallback = _fnResponseCallback; l_pHTTPArg = _pArg; @@ -522,12 +522,12 @@ HIDO_UtilSnprintf(l_acHTTPUrl, sizeof(l_acHTTPUrl), _pcUrl); l_u32HTTPSendBuffLen = HIDO_UtilSnprintf(l_acHTTPSendBuff, sizeof(l_acHTTPSendBuff), - "GET /%s HTTP/1.1\r\n" - "Host: %s\r\n" - "User-Agent: QUECTEL_MODULE\r\n" - "Connection: Keep-Alive\r\n" - "Accept: */*\r\n" - "\r\n" , l_acHTTPPath, l_acHTTPHost); + "GET /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "User-Agent: QUECTEL_MODULE\r\n" + "Connection: Keep-Alive\r\n" + "Accept: */*\r\n" + "\r\n" , l_acHTTPPath, l_acHTTPHost); l_fnHTTPResponseCallback = _fnResponseCallback; l_pHTTPArg = _pArg; @@ -582,24 +582,24 @@ HIDO_UtilSnprintf(l_acHTTPUrl, sizeof(l_acHTTPUrl), _pcUrl); l_u32HTTPSendBuffLen = HIDO_UtilSnprintf(l_acHTTPSendBuff, sizeof(l_acHTTPSendBuff), - "GET /%s HTTP/1.1\r\n" - "Host: %s\r\n" - "User-Agent: QUECTEL_MODULE\r\n" - "Connection: Keep-Alive\r\n" - "Accept: */*\r\n" - "Range: bytes=%u-%u\r\n", - l_acHTTPPath, l_acHTTPHost, _pstOpt->m_u32RangeBegin, _pstOpt->m_u32RangeEnd); + "GET /%s HTTP/1.1\r\n" + "Host: %s\r\n" + "User-Agent: QUECTEL_MODULE\r\n" + "Connection: Keep-Alive\r\n" + "Accept: */*\r\n" + "Range: bytes=%u-%u\r\n", + l_acHTTPPath, l_acHTTPHost, _pstOpt->m_u32RangeBegin, _pstOpt->m_u32RangeEnd); if(strlen(_pstOpt->m_acIfRange) != 0) { l_u32HTTPSendBuffLen += HIDO_UtilSnprintf(l_acHTTPSendBuff + l_u32HTTPSendBuffLen, sizeof(l_acHTTPSendBuff) - l_u32HTTPSendBuffLen, - "If-Range: \"%s\"\r\n" - "\r\n" , _pstOpt->m_acIfRange); + "If-Range: \"%s\"\r\n" + "\r\n" , _pstOpt->m_acIfRange); } else { l_u32HTTPSendBuffLen += HIDO_UtilSnprintf(l_acHTTPSendBuff + l_u32HTTPSendBuffLen, sizeof(l_acHTTPSendBuff) - l_u32HTTPSendBuffLen, - "\r\n"); + "\r\n"); } l_fnHTTPGetFileCallback = _fnGetFileCallback; @@ -628,7 +628,7 @@ * Modified Date: : 2021年5月3日 *******************************************************************************/ HIDO_INT32 HTTPClient_PostFile(HIDO_CHAR *_pcUrl, FN_HTTPPostDataCallback _fnPostDataCallback, FN_HTTPResponseCallback _fnResponseCallback, - HIDO_VOID *_pArg) + HIDO_VOID *_pArg) { if(l_eHTTPClientState != HTTP_CLIENT_STATE_IDLE) { @@ -721,13 +721,13 @@ if(Socket_Create(&l_i32HTTPClientSockID, SOCKET_TYPE_TCP, HTTPClient_SocketEventProc, HIDO_NULL) != HIDO_OK) { - + return HIDO_ERR; } if(HIDO_TimerCreate(&l_u32HTTPClientTimerID) != HIDO_OK) { - + return HIDO_ERR; } -- Gitblit v1.9.3