Microsoft XML 2.5 SDK


 

IXMLHttpRequest::send Method

[This is preliminary documentation and subject to change.]

Sends an HTTP request to the server and receives a response.

Visual Basic Syntax

oXMLHttpRequest.send(varBody)

C/C++ Syntax

HRESULT send(

    VARIANT varBody);

Parameters

varBody

[in]
Case-insensitive header name.

C/C++ Return Value

Returns S_OK if successful, or an error code otherwise.

Remarks

This method is synchronous or asynchronous depending on the value of the bAsync parameter in the open call. If open is called with bAsync == False, this call does not return until the entire response is received or the protocol stack times out. If open is called with bAsync == True, this call returns immediately.

This method takes one parameter, which is the requestBody to use. The acceptable VARIANT input types are BSTR, SAFEARRAY of UI1 (unsigned bytes), IDispatch to an XMLDOM object, and IStream *. You can only use chunked encoding (for sending) when sending IStream *input types. The component automatically sets the Content-Length header for all but IStream *input types.

If the input type is a BSTR, the response is always encoded as UTF8. The caller must set a Content-Type header with the appropriate content type and include a charset parameter.

If the input type is a SAFEARRAY of UI1, the response is sent as is without additional encoding. The caller must set a Content-Type header with the appropriate content type.

If the input type is an XMLDOM object, the response is encoded according to the encoding attribute on the "<?" XML declaration in the document. If there is no XML declaration or encoding attribute, UTF-8 is assumed.

If the input type is an IStream *, the response is sent as is without additional encoding. The caller must set a Content-Type header with the appropriate content type.