Partager via


WinHttpAddRequestHeadersEx, fonction (winhttp.h)

Ajoute un ou plusieurs en-têtes de requête HTTP à un handle de requête HTTP, ce qui vous permet d’utiliser des chaînes de nom/valeur distinctes.

Syntaxe

WINHTTPAPI DWORD WinHttpAddRequestHeadersEx(
  HINTERNET               hRequest,
  DWORD                   dwModifiers,
  ULONGLONG               ullFlags,
  ULONGLONG               ullExtra,
  DWORD                   cHeaders,
  WINHTTP_EXTENDED_HEADER *pHeaders
);

Paramètres

hRequest

Type : IN HINTERNET

Handle HINTERNET retourné par un appel à WinHttpOpenRequest.

dwModifiers

Type : IN DWORD

Valeur entière longue non signée qui contient les indicateurs utilisés pour modifier la sémantique de cette fonction. Il peut s’agir d’un ou plusieurs des indicateurs suivants.

Valeur Signification
WINHTTP_ADDREQ_FLAG_ADD
Ajoute l’en-tête s’il n’existe pas. Utilisé avec WINHTTP_ADDREQ_FLAG_REPLACE.
WINHTTP_ADDREQ_FLAG_ADD_IF_NEW
Ajoute l’en-tête uniquement s’il n’existe pas déjà ; sinon, une erreur est retournée.
WINHTTP_ADDREQ_FLAG_COALESCE
Fusionne les en-têtes du même nom.
WINHTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA
Fusionne les en-têtes du même nom à l’aide d’une virgule. Par exemple, l’ajout de « Accept : text/* » suivi de « Accept : audio/* » avec cet indicateur entraîne un en-tête unique « Accept : text/*, audio/* ». Cela entraîne la fusion du premier en-tête. L’application appelante doit garantir un schéma cohérent en ce qui concerne les en-têtes fusionnés et distincts.
WINHTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON
Fusionne les en-têtes du même nom à l’aide d’un point-virgule.
WINHTTP_ADDREQ_FLAG_REPLACE
Remplace ou supprime un en-tête. Si la valeur d’en-tête est vide et que l’en-tête est trouvé, il est supprimé. Si la valeur n’est pas vide, elle est remplacée.

ullFlags

Type : IN ULONGLONG

Passez WINHTTP_EXTENDED_HEADER_FLAG_UNICODE pour indiquer que les chaînes passées sont des chaînes Unicode.

ullExtra

Type : IN ULONGLONG

Réservé.

cHeaders

Type : IN DWORD

Nombre d’éléments dans pHeaders.

pHeaders

Type : _In_reads_(cHeaders) WINHTTP_EXTENDED_HEADER*

Tableau de structures WINHTTP_EXTENDED_HEADER .

Valeur retournée

Code status indiquant le résultat de l’opération. Parmi les codes d’erreur retournés figurent les suivants.

Code d'erreur Description
ERROR_WINHTTP_INCORRECT_HANDLE_STATE
Impossible d’effectuer l’opération demandée, car le handle fourni n’est pas dans l’état correct.
ERROR_WINHTTP_INCORRECT_HANDLE_TYPE
Le type de handle fourni est incorrect pour cette opération.
ERROR_WINHTTP_INTERNAL_ERROR
Une erreur interne s'est produite.
ERROR_NOT_ENOUGH_MEMORY
La mémoire disponible était insuffisante pour terminer l’opération demandée.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10 Build 20348
Serveur minimal pris en charge Windows 10 Build 20348
Plateforme cible Windows
En-tête winhttp.h
Bibliothèque Winhttp.lib
DLL Winhttp.dll

Voir aussi