我会说得对。
这是浏览器请求的样子
GET /index.html HTTP / 1.1
这就是winHTTP的作用
获取http://site.com/index.html HTTP / 1.1
有没有我可以获得winHTTP请求与常规格式相同的格式? 我正在使用VC ++ 2008,如果它有任何区别
答案 0 :(得分:5)
您的代码应如下所示:
// 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);
你能从你的代码中发布这三个电话吗?
请注意,完整的URL分为两部分 - 主机名在WinHttpConnect
调用中指定,但相对资源路径在WinHttpOpenRequest
调用中指定(作为pwszObjectName
参数)。根据您的评论,您似乎在WinHttpConnect
来电中指定了完整的网址。