Поделиться через


Функция HttpSendRequestExW (wininet.h)

Отправляет указанный запрос на HTTP-сервер.

Примечание Вызывающие абоненты, которым требуется отправить дополнительные данные за пределами обычно передаваемых в HttpSendRequestEx , могут сделать это, вызвав вместо этого HttpSendRequest .
 

Синтаксис

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

Параметры

[in] hRequest

Дескриптор, возвращаемый вызовом функции HttpOpenRequest .

[in] lpBuffersIn

Необязательный элемент. Указатель на структуру INTERNET_BUFFERS .

[out] lpBuffersOut

Зарезервировано. Должно иметь значение NULL.

[in] dwFlags

Зарезервировано. Должен равняться нулю.

[in] dwContext

Значение контекста, определяемое приложением, если функция обратного вызова состояния зарегистрирована.

Возвращаемое значение

Если функция выполняется успешно, функция возвращает значение TRUE.

Если функция завершается сбоем, она возвращает значение FALSE. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

HttpSendRequestEx выполняет отправку и получение ответа. Это не позволяет приложению отправлять дополнительные данные за пределы одного буфера, переданного в HttpSendRequestEx. Вызывающие абоненты, которым требуется отправить дополнительные данные за пределами обычно передаваемых в HttpSendRequestEx , могут сделать это, вызвав вместо этого HttpSendRequest . После вызова HttpSendRequestEx отправьте оставшиеся данные, вызвав InternetWriteFile. Наконец, выполните дальнейшие действия с вызовом HttpEndRequest.

Примечание Функция HttpSendRequestExA представляет данные для отправки в виде символов ISO-8859-1, а не символов ANSI. Функция HttpSendRequestExW представляет данные для отправки в виде символов ISO-8859-1, преобразованных в символы UTF-16LE. В результате никогда не безопасно использовать функцию HttpSendRequestExW , если добавляемые заголовки могут содержать символы, отличные от ASCII. Вместо этого приложение может использовать функции MultiByteToWideChar и WideCharToMultiByte с параметром Codepage , равным 28591, для сопоставления между символами ANSI и символами UTF-16LE.
 
Примечание WinINet не поддерживает реализации сервера. Кроме того, его не следует использовать из службы. Для серверных реализаций или служб используйте службы Microsoft Windows HTTP (WinHTTP).
 

Примечание

Заголовок wininet.h определяет HttpSendRequestEx в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header wininet.h
Библиотека Wininet.lib
DLL Wininet.dll

См. также раздел

Сеансы HTTP

Функции WinINet