Click to Rate and Give Feedback
MSDN
MSDN Library
Networking
Network Protocols
WinHTTP Reference
WinHTTP Interfaces
IWinHttpRequest
 IWinHttpRequest::ResponseText Prope...
Collapse All/Expand All Collapse All
IWinHttpRequest::ResponseText Property

The ResponseText property retrieves the response entity body as text.

Syntax (get)

C++
 HRESULT get_ResponseText(
  [out, retval]  BSTR *Body
);

Parameters

Body [out]

Receives the entity body of the response as text.

Return Value

The return value is S_OK on success or an error value otherwise.

Syntax

Script
strResponseText = obj.ResponseText

Property Value

BSTR that receives the entity body of the response as text.

Remarks

This property can only be invoked after the Send method has been called.

When using this property in synchronous mode, the limit to the number of characters it returns is approximately 2,169,895.

Note  For Windows XP and Windows 2000, see the Run-Time Requirements section of the WinHTTP Start Page.

Examples

The following example shows how to open an HTTP connection, send an HTTP request, and read the response text. This example must be run from a command prompt.

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

#include "httprequest.h"

#pragma comment(lib, "ole32.lib")
#pragma comment(lib, "oleaut32.lib")

// IID for IWinHttpRequest.
const IID IID_IWinHttpRequest =
{
  0x06f29373,
  0x5c5a,
  0x4b54,
  {0xb0, 0x25, 0x6e, 0xf1, 0xbf, 0x8a, 0xbf, 0x0e}
};

int main(int argc, char* argv[])
{
    // Variable for return value
    HRESULT    hr;

    // Initialize COM.
    hr = CoInitialize( NULL );

    IWinHttpRequest *  pIWinHttpRequest = NULL;

    BSTR            bstrResponse = NULL;
    VARIANT         varFalse;
    VARIANT         varEmpty;
    
    CLSID           clsid;

    VariantInit(&varFalse);
    V_VT(&varFalse)   = VT_BOOL;
    V_BOOL(&varFalse) = VARIANT_FALSE;

    VariantInit(&varEmpty);
    V_VT(&varEmpty) = VT_ERROR;

    hr = CLSIDFromProgID(L"WinHttp.WinHttpRequest.5.1", &clsid);

    if (SUCCEEDED(hr))
    {
        hr = CoCreateInstance(clsid, NULL, 
                              CLSCTX_INPROC_SERVER, 
                              IID_IWinHttpRequest, 
                              (void **)&pIWinHttpRequest);
    }
    if (SUCCEEDED(hr))
    {	// Open WinHttpRequest.
	    BSTR bstrMethod  = SysAllocString(L"GET");
		BSTR bstrUrl = SysAllocString(L"http://microsoft.com");
        hr = pIWinHttpRequest->Open(bstrMethod, bstrUrl, varFalse);
		SysFreeString(bstrMethod);
		SysFreeString(bstrUrl);
    }
    if (SUCCEEDED(hr))
    {	// Send Request.
        hr = pIWinHttpRequest->Send(varEmpty);
    }
    if (SUCCEEDED(hr))
    {	// Get Response text.
		hr = pIWinHttpRequest->get_ResponseText(&bstrResponse);
    }
	
	// Print the response to a console.
	wprintf(L"%.256s",bstrResponse);

	// Release memory.
    if (pIWinHttpRequest)
        pIWinHttpRequest->Release();
    if (bstrResponse)
        SysFreeString(bstrResponse);
	
	CoUninitialize();
	return 0;
}

The following scripting example shows how to open an HTTP connection, send an HTTP request, and read the response text.

// Instantiate a WinHttpRequest object.
var WinHttpReq = new ActiveXObject("WinHttp.WinHttpRequest.5.1");

// Initialize an HTTP request.  
WinHttpReq.Open("GET", "http://www.microsoft.com", false);

// Send the HTTP request.
WinHttpReq.Send(); 

// Display the response text.
WScript.Echo( WinHttpReq.ResponseText);

Requirements

Minimum supported clientWindows XP, Windows 2000 Professional with SP3
Minimum supported serverWindows Server 2003, Windows 2000 Server with SP3
RedistributableWinHTTP 5.0 and Internet Explorer 5.01 or later on Windows XP and Windows 2000.
IDLHttpRequest.idl
LibraryWinhttp.lib
DLLWinhttp.dll

See Also

IWinHttpRequest
WinHttpRequest
ResponseBody
ResponseStream
WinHTTP Versions

Send comments about this topic to Microsoft

Build date: 10/8/2009

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use | Trademarks | Privacy Statement
Page view tracker