C++HTTP要求を送信する実現コード

1312 ワード

 
  
#include
#include
#include

#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
"), 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;
    }
}

作者:コードギアス