// Post Specified data to web server
// By Jim Dai 2011
// buf: content to post
// blocksize: block size
// strHttpName: destination url
CString CUploader::UploadBinary(char * buf, UINT blocksize,CString strHttpName)
{
//CString strHttpName= "http://localhost/lab/upload/upload.php"; // 需要提交数据的页面
//CString strHttpName= "http://localhost/lab/upload/handshake.php";
//CString strFormData = buf; // 需要提交的数据
CInternetSession sess;
CHttpFile* fileGet;
CString strHeaders = "Content-Type: application/x-www-form-urlencoded"; // 请求头
try
{
fileGet=(CHttpFile*)sess.OpenURL(strHttpName);//打开文件
}
catch(CException* e)
{
fileGet = 0;
throw;
}
CString strSentence, strGetSentence = "";
if(fileGet)
{
DWORD dwStatus;
DWORD dwBuffLen = sizeof(dwStatus);
CString st = "";
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)buf, blocksize);
//BOOL result = fileGet->SendRequest(strHeaders, (LPVOID)(LPCTSTR)strFormData, strFormData.GetLength());
while(fileGet->ReadString(strSentence)) // 读取提交数据后的返回结果
{
strGetSentence = strGetSentence + strSentence;
}
return strGetSentence;
}
else
{
return "ERROR 404";
}
fileGet->Close();
delete fileGet;
}
else
return "ERROR 404";
sess.Close();
return "ERROR 404";
}
C++访问网页
最新推荐文章于 2024-05-17 22:20:11 发布