Funzione HttpSendRequestW (wininet.h)
Invia la richiesta specificata al server HTTP, consentendo ai chiamanti di inviare dati aggiuntivi oltre a ciò che viene normalmente passato a HttpSendRequestEx.
Sintassi
BOOL HttpSendRequestW(
[in] HINTERNET hRequest,
[in] LPCWSTR lpszHeaders,
[in] DWORD dwHeadersLength,
[in] LPVOID lpOptional,
[in] DWORD dwOptionalLength
);
Parametri
[in] hRequest
Handle restituito da una chiamata alla funzione HttpOpenRequest .
[in] lpszHeaders
Puntatore a una stringa con terminazione null contenente le intestazioni aggiuntive da aggiungere alla richiesta. Questo parametro può essere NULL se non sono presenti intestazioni aggiuntive da aggiungere.
[in] dwHeadersLength
Dimensioni delle intestazioni aggiuntive, in TCHARs. Se questo parametro è -1L e lpszHeaders non è NULL, la funzione presuppone che lpszHeaders sia con terminazione zero (ASCIIZ) e la lunghezza viene calcolata. Vedere Osservazioni per specifiche.
[in] lpOptional
Puntatore a un buffer contenente i dati facoltativi da inviare immediatamente dopo le intestazioni della richiesta. Questo parametro viene in genere usato per le operazioni POST e PUT. I dati facoltativi possono essere la risorsa o le informazioni inviate al server. Questo parametro può essere NULL se non sono presenti dati facoltativi da inviare.
[in] dwOptionalLength
Dimensioni dei dati facoltativi, in byte. Questo parametro può essere zero se non sono presenti dati facoltativi da inviare.
Valore restituito
Restituisce TRUE se ha esito positivo o FALSE in caso contrario. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
HttpSendRequest invia la richiesta specificata al server HTTP e consente al client di specificare intestazioni aggiuntive da inviare insieme alla richiesta.
La funzione consente anche al client di specificare dati facoltativi da inviare al server HTTP immediatamente dopo le intestazioni della richiesta. Questa funzionalità viene in genere usata per operazioni di "scrittura", ad esempio PUT e POST.
Dopo l'invio della richiesta, vengono letti il codice di stato e le intestazioni di risposta dal server HTTP. Queste intestazioni vengono mantenute internamente e sono disponibili per le applicazioni client tramite la funzione HttpQueryInfo .
Un'applicazione può usare lo stesso handle di richiesta HTTP in più chiamate a HttpSendRequest, ma l'applicazione deve leggere tutti i dati restituiti dalla chiamata precedente prima di chiamare nuovamente la funzione.
In modalità offline HttpSendRequest restituisce ERROR_FILE_NOT_FOUND se la risorsa non viene trovata nella cache Internet.
Esistono due versioni di HttpSendRequest: HttpSendRequestA (usato con build ANSI) e HttpSendRequestW (usato con build Unicode). Se dwHeadersLength è -1L e lpszHeaders non è NULL, si verificherà quanto segue: se viene chiamato HttpSendRequestA , la funzione presuppone che lpszHeaders sia con terminazione zero (ASCIIZ) e la lunghezza venga calcolata. Se viene chiamato HttpSendRequestW , la funzione ha esito negativo con ERROR_INVALID_PARAMETER.
Nota
L'intestazione wininet.h definisce HttpSendRequest come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | wininet.h |
Libreria | Wininet.lib |
DLL | Wininet.dll |