C++实现发送HTTP请求

#include <stdio.h>
#include 
<windows.h>
#include 
<wininet.h>

#define MAXSIZE 1024
#pragma comment(lib, "Wininet.lib") 

void urlopen(_TCHAR*);

int _tmain(int argc, _TCHAR* argv[])
{
    urlopen(_T(
"http://coderzh.cnblogs.com"));
    
return 0;
}

void urlopen(_TCHAR* url)
{
    HINTERNET hSession 
= InternetOpen(_T("UrlTest"), INTERNET_OPEN_TYPE_PRECONFIG, NULL, NULL, 0);
    
if(hSession != NULL)
    {
        HINTERNET hHttp 
= InternetOpenUrl(hSession, url, NULL, 0, INTERNET_FLAG_DONT_CACHE, 0);

        
if (hHttp != NULL)
        {
            wprintf_s(_T(
"%s\n"), url);

            BYTE Temp[MAXSIZE];
            ULONG Number 
= 1;
            
while (Number > 0)
            {
                InternetReadFile(hHttp, Temp, MAXSIZE 
- 1&Number);
                Temp[Number] 
= '\0';
                printf(
"%s", Temp);
            }
            InternetCloseHandle(hHttp);
            hHttp 
= NULL;
        }
        InternetCloseHandle(hSession);
        hSession 
= NULL;
    } 
}
posted @ 2008-11-24 18:35  CoderZh  阅读(28292)  评论(3编辑  收藏  举报