HttpSendRequestW-Funktion (wininet.h)
Sendet die angegebene Anforderung an den HTTP-Server, sodass Aufrufer zusätzliche Daten senden können, die über das hinausgehen, was normalerweise an HttpSendRequestEx übergeben wird.
Syntax
BOOL HttpSendRequestW(
[in] HINTERNET hRequest,
[in] LPCWSTR lpszHeaders,
[in] DWORD dwHeadersLength,
[in] LPVOID lpOptional,
[in] DWORD dwOptionalLength
);
Parameter
[in] hRequest
Ein Handle, das von einem Aufruf der HttpOpenRequest-Funktion zurückgegeben wird.
[in] lpszHeaders
Ein Zeiger auf eine NULL-Zeichenfolge, die die zusätzlichen Header enthält, die an die Anforderung angefügt werden sollen. Dieser Parameter kann NULL sein, wenn keine zusätzlichen Header angefügt werden müssen.
[in] dwHeadersLength
Die Größe der zusätzlichen Header in TCHARs. Wenn dieser Parameter -1L ist und lpszHeaders nicht NULL ist, geht die Funktion davon aus, dass lpszHeaders null beendet (ASCIIZ) ist und die Länge berechnet wird. Einzelheiten finden Sie unter Hinweise.
[in] lpOptional
Ein Zeiger auf einen Puffer, der alle optionalen Daten enthält, die unmittelbar nach den Anforderungsheadern gesendet werden sollen. Dieser Parameter wird im Allgemeinen für POST- und PUT-Vorgänge verwendet. Die optionalen Daten können die Ressource oder informationen sein, die auf dem Server veröffentlicht werden. Dieser Parameter kann NULL sein, wenn keine optionalen Daten zum Senden vorhanden sind.
[in] dwOptionalLength
Die Größe der optionalen Daten in Bytes. Dieser Parameter kann null sein, wenn keine optionalen Daten zum Senden vorhanden sind.
Rückgabewert
Gibt TRUE zurück, wenn der Vorgang erfolgreich war, oder andernfalls FALSE . Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
HttpSendRequest sendet die angegebene Anforderung an den HTTP-Server und ermöglicht es dem Client, zusätzliche Header anzugeben, die zusammen mit der Anforderung gesendet werden sollen.
Mit der Funktion kann der Client auch optionale Daten angeben, die unmittelbar nach den Anforderungsheadern an den HTTP-Server gesendet werden sollen. Dieses Feature wird im Allgemeinen für Schreibvorgänge wie PUT und POST verwendet.
Nachdem die Anforderung gesendet wurde, werden die status Code- und Antwortheader vom HTTP-Server gelesen. Diese Header werden intern verwaltet und stehen Clientanwendungen über die HttpQueryInfo-Funktion zur Verfügung.
Eine Anwendung kann dasselbe HTTP-Anforderungshandle in mehreren Aufrufen von HttpSendRequest verwenden. Die Anwendung muss jedoch alle vom vorherigen Aufruf zurückgegebenen Daten lesen, bevor sie die Funktion erneut aufruft.
Im Offlinemodus gibt HttpSendRequestERROR_FILE_NOT_FOUND zurück, wenn die Ressource nicht im Internetcache gefunden wird.
Es gibt zwei Versionen von HttpSendRequest: HttpSendRequestA (verwendet mit ANSI-Builds) und HttpSendRequestW (verwendet mit Unicode-Builds). Wenn dwHeadersLength -1L und lpszHeaders nicht NULL ist, geschieht Folgendes: Wenn HttpSendRequestA aufgerufen wird, geht die Funktion davon aus, dass lpszHeaders zero-terminated (ASCIIZ) ist und die Länge berechnet wird. Wenn HttpSendRequestW aufgerufen wird, schlägt die Funktion mit ERROR_INVALID_PARAMETER fehl.
Hinweis
Der wininet.h-Header definiert HttpSendRequest als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | wininet.h |
Bibliothek | Wininet.lib |
DLL | Wininet.dll |
Weitere Informationen
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für