HttpSendRequestExA function (wininet.h)

Sends the specified request to the HTTP server.

Note  Callers that need to send extra data beyond what is normally passed to HttpSendRequestEx can do so by calling HttpSendRequest instead.
 

Syntax

BOOL HttpSendRequestExA(
  [in]  HINTERNET           hRequest,
  [in]  LPINTERNET_BUFFERSA lpBuffersIn,
  [out] LPINTERNET_BUFFERSA lpBuffersOut,
  [in]  DWORD               dwFlags,
  [in]  DWORD_PTR           dwContext
);

Parameters

[in] hRequest

A handle returned by a call to the HttpOpenRequest function.

[in] lpBuffersIn

Optional. A pointer to an INTERNET_BUFFERS structure.

[out] lpBuffersOut

Reserved. Must be NULL.

[in] dwFlags

Reserved. Must be zero.

[in] dwContext

Application-defined context value, if a status callback function has been registered.

Return value

If the function succeeds, the function returns TRUE.

If the function fails, it returns FALSE. To get extended error information, call GetLastError.

Remarks

HttpSendRequestEx performs both the send and the receive for the response. This does not allow the application to send any extra data beyond the single buffer that was passed to HttpSendRequestEx. Callers that need to send extra data beyond what is normally passed to HttpSendRequestEx can do so by calling HttpSendRequest instead. After the call to HttpSendRequestEx, send the remaining data by calling InternetWriteFile. Finally, follow up with a call to HttpEndRequest.

Note  The HttpSendRequestExA function represents data to send as ISO-8859-1 characters not ANSI characters. The HttpSendRequestExW function represents data to send as ISO-8859-1 characters converted to UTF-16LE characters. As a result, it is never safe to use the HttpSendRequestExW function when the headers to be added can contain non-ASCII characters. Instead, an application can use the MultiByteToWideChar and WideCharToMultiByte functions with a Codepage parameter set to 28591 to map between ANSI characters and UTF-16LE characters.
 
Note  WinINet does not support server implementations. In addition, it should not be used from a service. For server implementations or services use Microsoft Windows HTTP Services (WinHTTP).
 

Note

The wininet.h header defines HttpSendRequestEx as an alias which automatically selects the ANSI or Unicode version of this function based on the definition of the UNICODE preprocessor constant. Mixing usage of the encoding-neutral alias with code that not encoding-neutral can lead to mismatches that result in compilation or runtime errors. For more information, see Conventions for Function Prototypes.

Requirements

Requirement Value
Minimum supported client Windows 2000 Professional [desktop apps only]
Minimum supported server Windows 2000 Server [desktop apps only]
Target Platform Windows
Header wininet.h
Library Wininet.lib
DLL Wininet.dll

See also

HTTP Sessions

WinINet Functions