Freigeben über


WsGetMappedHeader-Funktion (webservices.h)

Sucht einen zugeordneten Header in der Nachricht und deserialisiert sie.

Syntax

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
);

Parameter

[in] message

Die Nachricht, die den Header enthält.

Die Nachricht kann sich in einem beliebigen Zustand befinden, aber WS_MESSAGE_STATE_EMPTY.

[in] headerName

Der Name des zugeordneten Headers.

[in] repeatingOption

Gibt an, ob die Kopfzeile in der Nachricht möglicherweise mehrmals angezeigt wird.

Wenn WS_REPEATING_HEADER verwendet wird, gibt der Headerindex an, welcher der Header mit dem angegebenen headerName zurückgegeben werden soll.

Wenn WS_SINGLETON_HEADER verwendet wird, muss der headerIndex null sein.

[in] headerIndex

Der nullbasierte Index des Headers innerhalb der Gruppe von Headern mit dem angegebenen headerName.

[in] valueType

Der Typ des zu deserialisierenden Werts.

[in] readOption

Gibt an, ob der Wert erforderlich ist und wie der Wert zugeordnet wird. Weitere Informationen finden Sie unter WS_READ_OPTION .

Wenn der Header optional ist (kann null oder einmal angezeigt werden), kann WS_READ_OPTIONAL_POINTER verwendet werden.

[in, optional] heap

Der Heap, in dem die deserialisierten Headerdaten gespeichert werden sollen. Wenn dies NULL ist, wird der Nachrichtenheap verwendet.

value

Die Interpretation dieses Parameters hängt vom WS_READ_OPTION ab.

[in] valueSize

Die Interpretation dieses Parameters hängt vom WS_READ_OPTION ab.

[in, optional] error

Gibt an, wo zusätzliche Fehlerinformationen gespeichert werden sollen, wenn die Funktion fehlschlägt.

Rückgabewert

Diese Funktion kann einen dieser Werte zurückgeben.

Rückgabecode Beschreibung
WS_E_INVALID_FORMAT
Der Header ist nicht vorhanden und erforderlich.

Die Eingabedaten waren nicht im erwarteten Format.

WS_SINGLETON_HEADER angegeben wurde, und es gibt mehrere Instanzen des Headers mit dem angegebenen Namen in der Nachricht.

WS_E_QUOTA_EXCEEDED
Das Größenkontingent des Heaps wurde überschritten.
E_OUTOFMEMORY
Es war nicht genügend Arbeitsspeicher verfügbar, um den Header zu deserialisieren.
E_INVALIDARG
Einer oder mehrere der Parameter sind falsch.
Andere Fehler
Diese Funktion gibt möglicherweise andere Fehler zurück, die oben nicht aufgeführt sind.

Hinweise

Eine Nachricht kann zusätzliche transportspezifische Informationen enthalten, die nicht Teil des Nachrichtenumschlags sind. Diese transportspezifischen Informationen können programmgesteuert als Header des Message-Objekts verfügbar gemacht werden. Diese Funktion wird verwendet, um einen Header zu lesen, der von einem Transport in die Nachricht zugeordnet wurde.

Bei Verwendung des HTTP-Kanals müssen die erforderlichen Zuordnungen angegeben werden, bevor Header mit dieser Funktion extrahiert werden können. Weitere Informationen finden Sie unter WS_HTTP_MESSAGE_MAPPING.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile webservices.h
Bibliothek WebServices.lib
DLL WebServices.dll