• winhttp demo



    #include <string>
    #include <iostream>
    #include <windows.h>
    #include <winhttp.h>
    #pragma comment(lib,"winhttp.lib")
    #pragma comment(lib,"user32.lib")


    void main()
    {


    DWORD dwSize = 0;
    DWORD dwOut = 0;
    LPVOID lpOutBuffer = NULL;
    HINTERNET hSession = NULL,
    hConnect = NULL,
    hRequest = NULL;

    BOOL bResults = FALSE;

    hSession=WinHttpOpen(L"User Agent",WINHTTP_ACCESS_TYPE_DEFAULT_PROXY,WINHTTP_NO_PROXY_NAME,WINHTTP_NO_PROXY_BYPASS,0);

    if(hSession)
    {
    hConnect=WinHttpConnect(hSession,L"www.sqtxj.com",10087,0);
    }

    if(hConnect)
    {
    hRequest=WinHttpOpenRequest(hConnect, L"GET",L"/webservice/GetLastGpsData?VehicleNo=WENYX001",L"HTTP/1.1", WINHTTP_NO_REFERER,WINHTTP_DEFAULT_ACCEPT_TYPES,0);
    }

    if(hRequest)
    {
    bResults=WinHttpSendRequest(hRequest,WINHTTP_NO_ADDITIONAL_HEADERS, 0,WINHTTP_NO_REQUEST_DATA, 0, 0, 0 );
    }

    if(bResults)
    {
    bResults=WinHttpReceiveResponse(hRequest,NULL);

    }


    if(bResults)
    {
    // bResults=WinHttpQueryHeaders(hRequest,WINHTTP_QUERY_RAW_HEADERS_CRLF, WINHTTP_HEADER_NAME_BY_INDEX,NULL,&dwSize,WINHTTP_NO_HEADER_INDEX);

    // if( GetLastError( ) == ERROR_INSUFFICIENT_BUFFER)
    // {
    // lpOutBuffer = new WCHAR[dwSize/sizeof(WCHAR)];
    //
    // bResults = WinHttpQueryHeaders(hRequest,WINHTTP_QUERY_RAW_HEADERS_CRLF,WINHTTP_HEADER_NAME_BY_INDEX, lpOutBuffer, &dwSize,WINHTTP_NO_HEADER_INDEX);
    // }

    lpOutBuffer = new WCHAR[200];
    memset(lpOutBuffer, 0, 200);
    bResults = WinHttpReadData(hRequest, lpOutBuffer, 200, &dwOut);
    }

    if(bResults)
    {
    printf("Rev: %s ",lpOutBuffer);
    }

    delete [] lpOutBuffer;

    if (hRequest) WinHttpCloseHandle(hRequest);
    if (hConnect) WinHttpCloseHandle(hConnect);
    if (hSession) WinHttpCloseHandle(hSession);

    system("pause");


    }

  • 相关阅读:
    ASP.NET Web API 2 之文件下载
    Windows 查看某个端口号是否被占用
    C# 数据类型之 String(字符串)
    数据表对应关系(一对一、一对多、多对多)
    嫁给程序员的好处,你get到了吗?
    ASP.NET Web API 2 之 HttpRequestMessage 对象
    C# 使用 log4net 记录日志
    Chrome 浏览器快捷键
    C# 获取程序运行时路径
    SpringBoot整合Pagehelper分页插件
  • 原文地址:https://www.cnblogs.com/kyle-he/p/winhttp.html
Copyright © 2020-2023  润新知