Funzione WsGetMappedHeader (webservices.h)
Trova un'intestazione mappata nel messaggio e la deserializza.
Sintassi
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
);
Parametri
[in] message
Messaggio contenente l'intestazione.
Il messaggio può essere in qualsiasi stato, ma WS_MESSAGE_STATE_EMPTY.
[in] headerName
Nome dell'intestazione mappata.
[in] repeatingOption
Se l'intestazione può essere visualizzata più di una volta nel messaggio.
Se viene utilizzata WS_REPEATING_HEADER, l'indice di intestazione indica quale delle intestazioni con il nome intestazione specificato da restituire.
Se viene usato WS_SINGLETON_HEADER , l'intestazioneIndex deve essere zero.
[in] headerIndex
Indice in base zero dell'intestazione all'interno del set di intestazioni con il nome intestazione specificato.
[in] valueType
Tipo di valore da deserializzare.
[in] readOption
Indica se il valore è obbligatorio e come allocare il valore. Per altre informazioni, vedere WS_READ_OPTION .
Se l'intestazione è facoltativa (può essere visualizzata zero o una volta), è possibile usare WS_READ_OPTIONAL_POINTER .
[in, optional] heap
Heap in cui archiviare i dati dell'intestazione deserializzati. Se si tratta di NULL, verrà usato l'heap del messaggio.
value
L'interpretazione di questo parametro dipende dalla WS_READ_OPTION.
[in] valueSize
L'interpretazione di questo parametro dipende dalla WS_READ_OPTION.
[in, optional] error
Specifica la posizione in cui devono essere archiviate informazioni aggiuntive sugli errori se la funzione ha esito negativo.
Valore restituito
Questa funzione può restituire uno di questi valori.
Codice restituito | Descrizione |
---|---|
|
L'intestazione non esiste ed è necessaria.
I dati di input non erano nel formato previsto. WS_SINGLETON_HEADER è stato specificato e sono presenti più istanze dell'intestazione con il nome specificato nel messaggio. |
|
La quota di dimensioni dell'heap è stata superata. |
|
Memoria insufficiente per deserializzare l'intestazione. |
|
Uno o più parametri non sono corretti. |
|
Questa funzione può restituire altri errori non elencati sopra. |
Commenti
Un messaggio può contenere informazioni aggiuntive specifiche del trasporto che non fanno parte della busta del messaggio. Queste informazioni specifiche del trasporto possono essere esposte a livello di codice come intestazioni dell'oggetto Message. Questa funzione viene usata per leggere un'intestazione mappata da un trasporto nel messaggio.
Quando si usa il canale HTTP, è necessario specificare i mapping necessari prima che le intestazioni possano essere estratte con questa funzione. Per altre informazioni, vedere WS_HTTP_MESSAGE_MAPPING.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | webservices.h |
Libreria | WebServices.lib |
DLL | WebServices.dll |