CHttpFile::SendRequestEx
Эта функция-член вызывается отправить запрос к HTTP-серверу.
BOOL SendRequestEx(
DWORD dwTotalLen,
DWORD dwFlags = HSR_INITIATE,
DWORD_PTR dwContext = 1
);
BOOL SendRequestEx(
LPINTERNET_BUFFERS lpBuffIn,
LPINTERNET_BUFFERS lpBuffOut,
DWORD dwFlags = HSR_INITIATE,
DWORD_PTR dwContext = 1
);
Параметры
dwTotalLen
Число байт, отправляемых в запросе.dwFlags
Флаги, описывающий операцию. Список соответствующих флагов см. в разделе HttpSendRequestEx в Windows SDK*.*dwContext
Идентификатор контекста для операции CHttpFile. См. примечания дополнительные сведения об этом параметре.lpBuffIn
Указатель на INTERNET_BUFFERS инициализированному, который описывает входной буфер, используемый для операции.lpBuffOut
Указатель на INTERNET_BUFFERS инициализированному, описывающее выходной буфер, используемый для операции.
Возвращаемое значение
Ненулевой, если успешно. Если вызов завершается неудачей, определите причину сбоя с CInternetException штриховой объект.
Заметки
Эта функция позволяет приложению отправить данные с помощью запись и методы WriteStringCInternetFile. Необходимо знать длину данных отправить перед вызовом любой переопределение этой функции. Первое переопределение позволяет определить длину данных, которые будут отправлены. Второе переопределение принимает указатели к структурам INTERNET_BUFFERS, который можно использовать для описания буфер подробно.
После того как содержимое записывано к файлу, вызовите EndRequest для завершения операции.
Значение по умолчанию для dwContext отправлено MFC к объекту CHttpFile из объекта CInternetSession, который создал объект CHttpFile. При вызове CInternetSession::OpenURL или CHttpConnection для создания объекта CHttpFile можно переопределить значения по умолчанию, чтобы задать идентификатор контекста на значение для выбора. Идентификатор контекста возвращается в CInternetSession::OnStatusCallback, чтобы гарантировать состояние объекта, с которым он определен. См. статью Первые шаги в интернете. WinInet дополнительные сведения об идентификаторе контекста.
Исключения
Этот метод может создавать исключения типа CInternetException*.
Пример
Этот фрагмент кода отправляет содержимое строки в библиотеке DLL на сервере MFCISAPI.DLL LOCALHOST. Хотя этот пример использует только один вызов WriteString, используя несколько вызовов отправлять данные в блоках допустим.
CString strData = _T("Some very long data to be POSTed here!");
pServer = session.GetHttpConnection(_T("localhost"));
pFile = pServer->OpenRequest(CHttpConnection::HTTP_VERB_POST,
_T("/MFCISAPI/MFCISAPI.dll?"));
pFile->SendRequestEx(strData.GetLength());
pFile->WriteString(strData);
pFile->EndRequest();
Требования
Header: afxinet.h