我正在尝试将HTTP请求发布到可通过友好URL地址访问的HTML表单 但是当我发布它时,库会返回错误代码“提供的错误URL”。
HINTERNET hRequest = HttpOpenRequest(hConn, L"POST", L"newform",
NULL, L"http://www.example.com/add/newform/",
rgpszAcceptTypes, NULL, NULL);
DWORD error_code = GetLastError();
bool hResult = HttpSendRequestW(hRequest,NULL,NULL,NULL,NULL);
error_code = GetLastError(); //12005 - bad URL provided
我做错了什么,为什么我的请求失败了?
答案 0 :(得分:2)
必须在对InternetConnect的调用中指定服务器名称(上例中的www.site.com),协议(INTERNET_SERVICE_HTTP)也必须指定。
在对HttpOpenRequest的调用中,您只提供“对象”的名称,在本例中为“/ add / newform /".
例如(为了更加清晰而添加):
HINTERNET hConn = InternetConnect(hInternet, L"www.site.com", INTERNET_DEFAULT_HTTP_PORT,
NULL, NULL, INTERNET_SERVICE_HTTP, 0, 0);
HINTERNET hRequest = HttpOpenRequest(hConn, L"POST", L"/add/newform", NULL, NULL,
rgpszAcceptTypes, NULL, NULL);