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