HTTPSendRequestExA 函式 (wininet.h)
將指定的要求傳送至 HTTP 伺服器。
注意 需要傳送超出通常傳遞至 HttpSendRequestEx 之額外數據的呼叫端可以改為呼叫 HttpSendRequest 來執行此動作。
語法
BOOL HttpSendRequestExA(
[in] HINTERNET hRequest,
[in] LPINTERNET_BUFFERSA lpBuffersIn,
[out] LPINTERNET_BUFFERSA 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 字元。 因此,當要加入的標頭可以包含非 ASCII 字元時,使用 HttpSendRequestExW 函式就永遠不會安全。
相反地,應用程式可以使用 MultiByteToWideChar 和 WideCharToMultiByte 函式,並將 Codepage 參數設定為 28591,以在 ANSI 字元與 UTF-16LE 字元之間對應。
注意 WinINet 不支援伺服器實作。 此外,它不應該從服務使用。 對於伺服器實作或服務,請使用 Microsoft Windows HTTP 服務 (WinHTTP) 。
注意
wininet.h 標頭會根據 UNICODE 預處理器常數的定義,將 HttpSendRequestEx 定義為別名,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | wininet.h |
程式庫 | Wininet.lib |
Dll | Wininet.dll |