CHttpFile SendRequest,参数???
在http://book.wuxiawu.com/网页中,输入小说名称,比如:近身保镖,进行查询,用sniffer抓到的数据为:
POST /modules/article/search.php HTTP/1.1
Accept: */*
Referer: http://book.wuxiawu.com/
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)
Host: book.wuxiawu.com
Content-Length: 80
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: cck_lasttime=1259034080359; cck_count=0
searchtype=articlename&searchkey=%BD%FC%C9%ED%B1%A3%EF%DA&Submit=+%CB%D1+%CB%F7+
然后我想获取,查询后的网页数据,这个时候,SendRequest的参数应该怎么设置:
CString strHttpName="http://www.86zw.com/"; // 需要提交数据的页面
CString strFormData = "searchtype=articlename&searchkey=%BD%FC%C9%ED%B1%A3%EF%DA&Submit=+%CB%D1+%CB%F7+
"; // 需要提交的数据
CInternetSession sess;
CHttpFile* fileGet;
CString strHeaders = _T("Content-Type: application/x-www-form-urlencoded"); // 请求头
DWORD dwStatus;
DWORD dwBuffLen = sizeof(dwStatus);
BOOL bSuccess = fileGet->QueryInfo(HTTP_QUERY_STATUS_CODE|HTTP_QUERY_FLAG_NUMBER, &dwStatus, &dwBuffLen);
if( bSuccess && dwStatus>= 200 &&dwStatus<300 )
{
BOOL result = fileGet->SendRequest(strHeaders, (LPVOID)(LPCTSTR)strFormData, strFormData.GetLength());
while(fileGet->ReadString(strSentence)) // 读取提交数据后的返回结果
{
strGetSentence = strGetSentence + strSentence + char(13) + char(10);
}
AfxMessageBox(strGetSentence); // 显示返回网页内容
}
疑问:
这个请求头到底是什么意思,是:("Content-Type: application/x-www-form-urlencoded");
还是:/modules/article/search.php HTTP/1.1
POST /modules/article/search.php HTTP/1.1,这个不是请求头的意思吗?