Winhttp Obtenha solicitação C ++
-
22-09-2019 - |
Pergunta
Eu vou direto ao ponto.
É assim que uma solicitação de navegador se parece
Get /index.html http /1.1
É isso que o winehttp faz
PEGUE http://site.com/index.html Http/1.1
Existe algum que eu possa obter a solicitação WINHTTP para ser o mesmo formato que o regular? Estou usando o VC ++ 2008 se fizer alguma diferença
Solução
Seu código deve ficar assim:
// Specify an HTTP server.
if (hSession)
hConnect = WinHttpConnect( hSession, L"www.example.com",
INTERNET_DEFAULT_HTTP_PORT, 0);
// Create an HTTP request handle.
if (hConnect)
hRequest = WinHttpOpenRequest( hConnect, L"GET", L"/path/resource.html",
NULL, WINHTTP_NO_REFERER,
WINHTTP_DEFAULT_ACCEPT_TYPES,
WINHTTP_FLAG_SECURE);
// Send a request.
if (hRequest)
bResults = WinHttpSendRequest( hRequest,
WINHTTP_NO_ADDITIONAL_HEADERS,
0, WINHTTP_NO_REQUEST_DATA, 0,
0, 0);
Você pode postar essas três chamadas do seu código?
Observe que o URL completo é dividido em dois - o nome do host é especificado no WinHttpConnect
ligue, mas o caminho de recurso relativo é especificado no WinHttpOpenRequest
ligue (como o pwszObjectName
parâmetro). Com base no seu comentário, parece que você está especificando o URL completo no WinHttpConnect
ligar.
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow