18,356
社区成员
发帖
与我相关
我的任务
分享
int AsyncWsaRecvData()
{
nRet = WSARecv(m_hSocket,&m_WsaBufHttpRecv,1,&dwBytesTransferred,&Flags,&m_Overlapped,NULL);
nErrorCode = WSAGetLastError();
if(nRet==SOCKET_ERROR && nErrorCode!=WSA_IO_PENDING)
{
if(nErrorCode==WSAECONNRESET)//10054错误,解决办法:重新连接后再重新请求
{
CatchSystemError(LOG_HTTP_RESPONSE_ERROR_ID,__FILE__,__LINE__,GetWin32ErrorInfo(nErrorCode),nErrorCode);
AsyncWsaRecvData();
}
else if(nErrorCode==WSAECONNABORTED)//10053错误.解决办法:重新连接后再重新请求
{
CatchSystemError(LOG_HTTP_RESPONSE_ERROR_ID,__FILE__,__LINE__,GetWin32ErrorInfo(nErrorCode),nErrorCode);
AsyncWsaRecvData();
}
else
{
CatchSystemError(LOG_HTTP_RESPONSE_ERROR_ID,__FILE__,__LINE__,GetWin32ErrorInfo(nErrorCode),nErrorCode);
return RETURN_EXIT;
}
}
return RETURN_OK;
}