WsGetMappedHeader, fonction (webservices.h)
Recherche un en-tête mappé dans le message et le désérialise.
Syntaxe
HRESULT WsGetMappedHeader(
[in] WS_MESSAGE *message,
[in] const WS_XML_STRING *headerName,
[in] WS_REPEATING_HEADER_OPTION repeatingOption,
[in] ULONG headerIndex,
[in] WS_TYPE valueType,
[in] WS_READ_OPTION readOption,
[in, optional] WS_HEAP *heap,
void *value,
[in] ULONG valueSize,
[in, optional] WS_ERROR *error
);
Paramètres
[in] message
Message contenant l’en-tête.
Le message peut être dans n’importe quel état , mais WS_MESSAGE_STATE_EMPTY.
[in] headerName
Nom de l’en-tête mappé.
[in] repeatingOption
Indique si l’en-tête peut apparaître plusieurs fois dans le message.
Si WS_REPEATING_HEADER est utilisé, l’index d’en-tête indique lequel des en-têtes avec le nom d’en-tête spécifié doit retourner.
Si WS_SINGLETON_HEADER est utilisé, headerIndex doit être égal à zéro.
[in] headerIndex
Index de base zéro de l’en-tête dans l’ensemble d’en-têtes avec le nom d’en-tête spécifié.
[in] valueType
Type de valeur à désérialiser.
[in] readOption
Indique si la valeur est requise et comment allouer la valeur. Pour plus d’informations, consultez WS_READ_OPTION .
Si l’en-tête est facultatif (peut apparaître zéro ou une fois), WS_READ_OPTIONAL_POINTER pouvez être utilisé.
[in, optional] heap
Tas dans lequel stocker les données d’en-tête désérialisées. S’il s’agit de NULL, le tas de message est utilisé.
value
L’interprétation de ce paramètre dépend du WS_READ_OPTION.
[in] valueSize
L’interprétation de ce paramètre dépend du WS_READ_OPTION.
[in, optional] error
Spécifie l’emplacement où des informations d’erreur supplémentaires doivent être stockées en cas d’échec de la fonction.
Valeur retournée
Cette fonction peut retourner l’une de ces valeurs.
Code de retour | Description |
---|---|
|
L’en-tête n’existe pas et est obligatoire.
Les données d’entrée n’étaient pas au format attendu. WS_SINGLETON_HEADER a été spécifié, et il existe plusieurs instances de l’en-tête avec le nom spécifié dans le message. |
|
Le quota de taille du tas a été dépassé. |
|
La mémoire disponible était insuffisante pour désérialiser l’en-tête. |
|
Un ou plusieurs paramètres sont incorrects. |
|
Cette fonction peut retourner d’autres erreurs non répertoriées ci-dessus. |
Remarques
Un message peut contenir des informations supplémentaires spécifiques au transport qui ne font pas partie de l’enveloppe du message. Ces informations spécifiques au transport peuvent être exposées par programmation en tant qu’en-têtes de l’objet Message. Cette fonction est utilisée pour lire un en-tête qui a été mappé par un transport dans le message.
Lors de l’utilisation du canal HTTP, les mappages requis doivent être spécifiés avant que les en-têtes puissent être extraits avec cette fonction. Pour plus d’informations, consultez WS_HTTP_MESSAGE_MAPPING.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 7 [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows Server 2008 R2 [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | webservices.h |
Bibliothèque | WebServices.lib |
DLL | WebServices.dll |