Пожалуйста, обратите внимание, что пользователь заблокирован
В общем пытаюсь получить Content-Lenght таким образом:
Шлю GET-запрос на сервер:
Ответ сервера:
Но по итогу responseSize равен 0. С чем это может быть связано? Или как реализовать получение Content-Lenght правильно?
C:
DWORD GetContentSize(HINTERNET requesthandle)
{
DWORD content_length = 0;
DWORD content_lengt_size = sizeof(DWORD);
if (!HttpQueryInfoW(requesthandle, HTTP_QUERY_CONTENT_LENGTH | HTTP_QUERY_FLAG_NUMBER, &content_length, &content_lengt_size, NULL)) {
return 0;
}
return content_length;
}
Шлю GET-запрос на сервер:
C:
DWORD GetRequest(LPCWSTR host, BOOL isSsl, LPCWSTR req, DWORD* responseSize, LPWSTR response)
{
HINTERNET hInternet = NULL, hConnect = NULL, hRequest = NULL;
hInternet = InternetOpenW(NULL, INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0);
if (hInternet == NULL)
{
return INVALID_INTERNET_SESSION;
}
hConnect = InternetConnectW(hInternet, host, isSsl ? INTERNET_DEFAULT_HTTPS_PORT : INTERNET_DEFAULT_HTTP_PORT, NULL, NULL, INTERNET_SERVICE_HTTP, 0, NULL);
if (hConnect == NULL)
{
InternetCloseHandle(hInternet);
return INTERNET_CONNECT_ERROR;
}
hRequest = HttpOpenRequestW(hConnect, L"GET", req, NULL, NULL, NULL, isSsl ? INTERNET_FLAG_SECURE : INTERNET_FLAG_KEEP_CONNECTION, 0);
if (hRequest == NULL)
{
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return INVALID_REQUEST;
}
if (!HttpSendRequestW(hRequest, NULL, 0, NULL, 0))
{
InternetCloseHandle(hRequest);
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return SEND_REQ_ERROR;
}
*responseSize = GetContentSize(hRequest);
LPVOID buff = calloc(*responseSize, sizeof(wchar_t));
DWORD dwByteRead;
InternetReadFile(hRequest, buff, dataSize, &dwByteRead);
ASCIIToUnicode((char*)buff, response);
free(buff);
InternetCloseHandle(hRequest);
InternetCloseHandle(hConnect);
InternetCloseHandle(hInternet);
return 0;
}
error = GetRequest(L"127.0.0.1", FALSE, L"/hello/", &responseSize, serverResponse);Ответ сервера:
Но по итогу responseSize равен 0. С чем это может быть связано? Или как реализовать получение Content-Lenght правильно?