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
描述操作的标志。有关相应标志的列表,请参见。Windows SDK的 HttpSendRequestEx。dwContext
CHttpFile 操作的上下文标识符。请参见"备注"有关此参数的更多信息。lpBuffIn
描述输入缓冲区为初始化的 INTERNET_BUFFERS 的指针的操作改用。lpBuffOut
描述输出区域为初始化的 INTERNET_BUFFERS 的指针的操作改用。
返回值
非零,如果成功。如果调用失败,请通过检查时引发的 CInternetException 对象以确定失败的原因。
备注
此功能允许您的应用程序发送数据使用 写入 和 CInternetFileWriteString 方法。必须知道数据的长度在调用此函数任何重写之前发送。第一个重写允许您指定要发送数据的长度。第二个重写接受指向 INTERNET_BUFFERS 结构,该结构详细的信息可用于描述缓冲区。
在内容写入文件后,调用 EndRequest 结束操作。
MFC发送 dwContext 的默认值设置为 CHttpFile 对象从创建 CHttpFile 对象的 CInternetSession 对象。当您调用 CInternetSession::OpenURL 或 CHttpConnection 构造 CHttpFile 对象时,可以重写默认值设置上下文标识符到您选择的值。上下文标识符在它标识的对象返回到 CInternetSession::OnStatusCallback 提供状态。参见中的文章 Internet第一步:WinInet 有关上下文标识符的更多信息。
异常
此方法会引发类型 **CInternetException***的异常。
示例
此代码片段将字符串发送的内容添加到名为在LOCALHOST服务器的MFCISAPI.DLL的DLL。尽管此示例仅使用一时调用 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