Funzione WsCheckMustUnderstandHeaders (webservices.h)
Verifica che le intestazioni specificate siano state riconosciute dal ricevitore.
Sintassi
HRESULT WsCheckMustUnderstandHeaders(
[in] WS_MESSAGE *message,
[in, optional] WS_ERROR *error
);
Parametri
[in] message
Puntatore alla struttura WS_MESSAGE contenente le intestazioni da comprendere.
[in, optional] error
Puntatore a una struttura WS_ERROR in cui vengono archiviate informazioni aggiuntive sull'errore se la funzione ha esito negativo.
Valore restituito
Se la funzione ha esito positivo, restituisce NO_ERROR; in caso contrario, restituisce un codice di errore HRESULT.
Codice restituito | Descrizione |
---|---|
|
Il messaggio non è nello stato corretto. Per altre informazioni, vedere la sezione Osservazioni. |
|
La convalida non è riuscita oppure il messaggio non è stato formato correttamente. |
|
Uno o più argomenti non sono validi. |
|
Memoria insufficiente per completare l'operazione. |
|
Questa funzione può restituire altri errori non elencati in precedenza. |
Commenti
Poiché il set di intestazioni è estendibile, è necessario determinare se un messaggio è stato sufficientemente compreso per essere elaborato. Pertanto, il mittente può usare questa funzione per indicare quali intestazioni devono essere comprese, quali intestazioni possono essere considerate facoltative o informative.
Le intestazioni di indirizzamento standard, ad esempio quelle definite in WS_HEADER_TYPE, vengono considerate automaticamente comprensibili, anche se non vengono mai lette chiamando WsGetHeader.
Si presuppone che vengano comprese anche intestazioni personalizzate definite dall'applicazione lette da WsGetCustomHeader . La chiamata a WsGetCustomHeader contrassegnerà automaticamente l'intestazione specifica come compresa.
Per qualsiasi altra intestazione elaborata dall'applicazione, l'applicazione deve contrassegnare in modo esplicito l'intestazione come compresa chiamando WsMarkHeaderAsUnderstood. In caso contrario, l'intestazione viene considerata non comprensibile.
Questa funzione deve essere chiamata dopo che tutte le intestazioni sono state lette per un messaggio ricevuto. Un'eccezione alla necessità di chiamare questa funzione è il caso di un intermediario che inoltra il messaggio a un altro nodo senza modificarne l'identità (ID messaggio), poiché il nodo finale eseguirà il controllo.
La funzione avrà esito negativo se una delle intestazioni specificate non è stata compresa. Se alla funzione viene fornito un oggetto di errore, verrà popolato con informazioni che possono essere usate per inviare un errore (vedere WsCreateFaultFromError).
Il messaggio deve essere nello stato WS_MESSAGE_STATE_READING.
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 |