Komprimierung/Dekomprimierung mit den HTTP-Aktivitäten 'Anforderung aufrufen', 'Anforderung abrufen', 'Anforderung senden', 'Head-Anforderung', 'Put-Anforderung', 'Anforderung löschen'

Während der Laufzeit sendet die HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen eine HTTP-Anforderung, die mit dem Protokoll HTTP/HTTPS 1.1 konform ist, an den HTTP-Server.

Anmerkung: Die HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen unterstützt die Komprimierung/Dekomprimierung mit 'gzip' oder anderen Komprimierungsformaten. Das allgemeine Komprimierungsformat für UNIX-Dateien 'compress' wird nicht unterstützt.

Das Laufzeitverhalten der HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen bezüglich der Komprimierung/Dekomprimierung ist von folgenden Bedingungen abhängig:

Die Auswirkungen dieser Bedingungen auf das Laufzeitverhalten der HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen bezüglich der Komprimierung/Dekomprimierung werden im Folgenden beschrieben und im Abschnitt Laufzeitverhalten bezüglich Komprimierung/Dekomprimierung in Tabellen dargestellt.

Endpunktunterstützung für Komprimierung/Dekomprimierung

Die Integrationsanwendung bestimmt, ob der HTTP-Endpunkt die Komprimierung unterstützt, wenn die Integrationseinheit (Integration Appliance) die erste HTTP-Anforderung im komprimierten Format an den HTTP-Endpunkt (den HTTP-Server) sendet. Wenn der HTTP-Server einen Fehlercode zurückgibt, der darauf hinweist, dass der HTTP-Server die Komprimierung oder den angegebenen Typ für 'Content-Encoding' nicht unterstützt, sendet die Integrationseinheit (Integration Appliance) die erste Anforderung im nicht komprimierten Format und alle folgenden Anforderungen an diesen Endpunkt werden ebenfalls im nicht komprimierten Format gesendet. Außerdem wird die HTTP-Antwort, die der HTTP-Server sendet, nicht dekomprimiert, wenn Sie von der Integrationseinheit (Integration Appliance) empfangen wird.  

Die Endpunktunterstützung für Komprimierung/Dekomprimierung wird durch die Spalte mit dem Namen Unterstützt der Endpunkt die Komprimierung? in den Tabellen dargestellt, die im Abschnitt Laufzeitverhalten bei Komprimierung/Dekomprimierung zur Verfügung stehen.  

Werte für 'Content-Encoding' und 'Accept-Encoding' auf Nachrichtenebene

Der Wert für den Header 'Content-Encoding' in der HTTP-Anforderung bestimmt, ob der Hauptteil der Anforderung komprimiert wird und welcher Typ von Codierung verwendet wird. Wenn der Wert für 'Content-Encoding' gleich der Komprimierung ist, sendet die Integrationseinheit (Integration Appliance) den Hauptteil der Anforderung komprimiert in dem Format, wie dies in der zweiten Zeile der ersten Tabelle gezeigt wird. Die Tabelle in der folgenden Abbildung trägt den Namen Komprimierungsverhalten beim Senden einer Anforderung.

Der Wert für den Header 'Accept-Encoding' in der Anforderung definiert die Typen der Codierung, die der HTTP-Client in der Antwort akzeptiert. Wenn der Wert für 'Accept-Encoding' in der Anforderung zum Beispiel gzip,deflate lautet, kann der HTTP-Server den Hauptteil der Antwort im mit 'gzip' komprimierten Format oder in anderen Komprimierungsformaten an die Integrationseinheit (Integration Appliance) (die als Client fungiert) senden, wie dies in der folgenden Abbildung dargestellt ist:
Abbildung 1.
Falls dem optionalen Eingabeparameter httpheaders standardmäßig in der Task Eingaben zuordnen der HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen nichts zugeordnet ist, wird eine Gruppe von Standard-Headern erstellt. Der URL-Header wird automatisch auf den Wert eingestellt, der im Teilfenster 'Konfigurieren' der HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen festgelegt ist.

Die Werte für die Header 'Accept-Encoding' und 'Content-Encoding' für die Anforderung können explizit mithilfe von Name/Wert-Paaren im optionalen Eingabeparameter httpheaders der Task Eingaben zuordnen in der HTTP-Aktivität Anforderung aufrufen, Anforderung abrufen, Anforderung senden, Head-Anforderung, Put-Anforderung, Anforderung löschen festgelegt werden. Legen Sie zum Beispiel folgendes Name/Wert-Paar im optionalen Eingabeparameter httpheaders fest, um für 'Content-Encoding' die Einstellung deflate zu definieren.

Wenn nicht unterstützte Werte oder gar keine Werte für die Header 'Accept-Encoding' und 'Content-Encoding' der Anforderung festgelegt sind, werden Standardwerte wie in den folgenden Tabellen dargestellt zur Verfügung gestellt:

Die Werte der Header 'Accept-Encoding' und 'Content-Encoding' in der Anforderung werden von der Integrationseinheit (Integration Appliance) und dem HTTP-Server verwendet, um das Komprimierungs-/Dekomprimierungsverhalten zu bestimmen.

Komprimierung/Dekomprimierung auf Aktivitätsebene festlegen

Die Komprimierung/Dekomprimierung wird standardmäßig für alle HTTP-Aktivitäten nicht verwendet. Sie können die Komprimierung oder Dekomprimierung auf der Aktivitätsebene über das Kontrollkästchen Komprimierung/Dekomprimierung verwenden auswählen, das in der Task Konfigurieren der Aktivität angezeigt wird. Die Spalte mit der Bezeichnung Kontrollkästchen 'Komprimierung/Dekomprimierung verwenden' in der Tabelle im Abschnitt Laufzeitverhalten bezüglich Komprimierung/Dekomprimierung gibt die Einstellung des Kontrollkästchens Komprimierung/Dekomprimierung verwenden an.

Anmerkung: Das Kontrollkästchen Komprimierung/Dekomprimierung verwenden wird in einem künftigen Release für die HTTP-Aktivitäten nicht mehr unterstützt werden. Verwenden Sie die HTTP-Parameter 'Content-Encoding' und 'Accept-Encoding' in der HTTP-Anforderung, um anzugeben, wie der Hauptteil der HTTP-Anforderung dekomprimiert und der Hauptteil der HTTP-Antwort komprimiert werden sollen.

Laufzeitverhalten bezüglich Komprimierung/Dekomprimierung

Die Tabelle, die im Abschnitt Komprimierungsverhalten beim Senden einer Anforderung zur Verfügung gestellt wird, beschreibt das Laufzeitverhalten der Komprimierung, wenn die Integrationseinheit (Integration Appliance) eine HTTP-Anforderung an den HTTP-Server sendet.

Die Tabelle, die im Abschnitt Wert für Header 'Accept-Encoding' an die Anforderung übergeben zur Verfügung gestellt wird, beschreibt den Wert des Headers 'Accept-Encoding', der in der HTTP-Anforderung übergeben wird.

Die Tabelle, die im Abschnitt Dekomprimierungsverhalten beim Empfangen einer Antwort zur Verfügung gestellt wird, beschreibt das Laufzeitverhalten der Dekomprimierung, wenn die Integrationseinheit (Integration Appliance) die HTTP-Antwort vom HTTP-Server empfängt.

Komprimierungsverhalten beim Senden einer Anforderung

Die folgende Tabelle beschreibt das Laufzeitverhalten bezüglich der Komprimierung, wenn die Integrationseinheit (Integration Appliance) eine HTTP-Anforderung an den HTTP-Server sendet.

Kontrollkästchen 'Komprimierung/Dekomprimierung verwenden' (Aktivitätsebene) Inhaltscodierungswert in der HTTP-Anforderung (Nachrichtenebene) Unterstützt der Endpunkt Komprimierung? Laufzeitkomprimierungsverhalten der Integrationseinheit (Integration Appliance) beim Senden einer Anforderung
ausgewählt gzip, nicht definiert oder eine beliebige Zeichenfolge außer 'deflate' und 'identity' Ja Die Integrationseinheit (Integration Appliance) sendet den Hauptteil der Anforderung komprimiert im Format 'gzip'. Der Header 'Content-Encoding' ist in der Anforderung mit gzip definiert.
ausgewählt deflate Ja Die Integrationseinheit (Integration Appliance) sendet den Hauptteil der Anforderung komprimiert im Format 'deflate'. Der Header 'Content-Encoding' ist in der Anforderung mit deflate definiert.
ausgewählt identity Ja Die Integrationseinheit (Integration Appliance) sendet den Hauptteil der Anforderung nicht komprimiert. Der Header 'Content-Encoding' ist in der Anforderung mit identity definiert.
ausgewählt Der Wert ist nicht signifikant. Nein Die Integrationseinheit (Integration Appliance) sendet den Hauptteil der Anforderung nicht komprimiert. Der Header 'Content-Encoding' ist in der Anforderung mit identity definiert.
abgewählt Der Wert ist nicht signifikant. Der Wert ist nicht signifikant. Die Integrationseinheit (Integration Appliance) sendet den Hauptteil der Anforderung unverändert (as is). Der aktuelle Wert für den Header 'Content-Encoding' wird unverändert in die Anforderung übergeben.

 

Wert für Header 'Accept-Encoding' an Anforderung übergeben

Die folgende Tabelle beschreibt den Wert des Accept-Encoding-Headers, der in der HTTP-Anforderung übergeben wird.

Kontrollkästchen 'Komprimierung/Dekomprimierung verwenden' (Aktivitätsebene) Anfangswert für 'Accept-Encoding' Unterstützt der Endpunkt Komprimierung? Wert für 'Accept-Encoding' wird in HTTP-Anforderung an den Server übergeben
ausgewählt gzip Ja Der Header 'Accept-Encoding' ist in der Anforderung mit gzip definiert.
ausgewählt deflate Ja Der Header 'Accept-Encoding' ist in der Anforderung mit deflate definiert.
ausgewählt gzip,deflate Ja Der Header 'Accept-Encoding' ist in der Anforderung mit gzip,deflate definiert.
ausgewählt deflate,gzip Ja Der Header 'Accept-Encoding' ist in der Anforderung mit deflate,gzip definiert.
ausgewählt identity Ja Der Header 'Accept-Encoding' ist in der Anforderung mit identity definiert.
ausgewählt nicht definiert oder eine beliebige Zeichenfolge außer 'deflate', 'gzip' und 'identity'. Ja Der Header 'Accept-Encoding' ist in der Anforderung mit gzip,deflate definiert.
Ausgewählt Der Wert ist nicht signifikant. Nein Der aktuelle Wert für den Header 'Accept-Encoding' wird unverändert in die Anforderung übergeben.
abgewählt Der Wert ist nicht signifikant. Der Wert ist nicht signifikant. Der aktuelle Wert für den Header 'Accept-Encoding' wird unverändert in die Anforderung übergeben.

Dekomprimierungsverhalten beim Empfangen einer Antwort

Die folgende Tabelle beschreibt das Laufzeitverhalten bei Dekomprimierung, wenn die Integrationseinheit (Integration Appliance) eine HTTP-Antwort vom HTTP-Server empfängt.

Kontrollkästchen 'Komprimierung/Dekomprimierung verwenden' (Aktivitätsebene) Inhaltscodierungswert in der HTTP-Antwort (Nachrichtenebene) Unterstützt der Endpunkt Komprimierung? Laufzeitdekomprimierungsverhalten der Integrationseinheit (Integration Appliance) beim Empfangen einer Antwort
ausgewählt gzip ja Die Integrationseinheit (Integration Appliance) dekomprimiert den Hauptteil der Antwort mithilfe des Formats 'gzip'.
ausgewählt deflate Ja Die Integrationseinheit (Integration Appliance) dekomprimiert den Hauptteil der Antwort mithilfe des Formats 'deflate'.
ausgewählt identity Ja Die Integrationseinheit (Integration Appliance) dekomprimiert den Hauptteil der Antwort nicht.
ausgewählt Der Wert wird nicht im Header 'Accept-Encoding' aufgelistet Ja Die Integrationseinheit (Integration Appliance) protokolliert einen Fehler, den die Antwortdaten in einem unerwarteten Inhaltscodierungstyp empfangen haben.
ausgewählt Der Wert ist nicht signifikant. Nein Die Integrationseinheit (Integration Appliance) dekomprimiert den Hauptteil der Antwort nicht. Der aktuelle Wert für den Header 'Content-Encoding' wird unverändert an die Antwort übergeben.
abgewählt Der Wert ist nicht signifikant. Der Wert ist nicht signifikant. Die Integrationseinheit (Integration Appliance) dekomprimiert den Hauptteil der Antwort nicht. Der aktuelle Wert für den Header 'Content-Encoding' wird unverändert an die Antwort übergeben.



Feedback | Notices


Timestamp icon Letzte Aktualisierung: Friday, November 8, 2013


http://pic.dhe.ibm.com/infocenter/wci/v7r0m0/topic/com.ibm.wci.doc/compression_decompression_with_the_http_invoke_get_post_head_put_delete_request_activity.html