Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

HTTP-DESCRIPTOR - HTTP Descriptor definieren

Mit der Anweisung HTTP-DESCRIPTOR wird eine Abbildung des in einem HTTP-Request empfangenen Path auf einen TAC definiert und es können zusätzliche Verarbeitungsparameter angegeben werden. Die Angaben in der Anweisung HTTP-DESCRIPTOR dienen UTM nach Empfang eines HTTP-Requests dazu den TAC zu bestimmen, dem die Nachricht zugestellt werden soll, sowie die Verarbeitung der Nachricht zu steuern.

Ist für den Path eines HTTP-Requests keine passende HTTP-DESCRIPTOR Anweisung definiert, dann führt UTM für diesen Request eine Standard-Umsetzung der Nachrichten durch, falls sich der Path unmittelbar auf einen für die Anwendung definierten TAC abbilden lässt.

HTTP-DESCRIPTOR

http-descriptor-name
[ ,BCAMAPPL = bcamappl | *ALL ]
[ ,HTTP-EXIT = program-name | *NONE | *SYSTEM ]
[ ,PATH = C'path' | C’/*’ ]
  ,TAC = tac
[ ,USER-AUTH = *NONE | *BASIC]

nur für BS2000-Systeme
[ ,CONVERT-TEXT = *YES | *NO ]

http-descriptor-name 

Der Parameter http-descriptor-name hat nur anwendungslokale Bedeutung. Er weist dem HTTP-DESCRIPTOR einen lokalen Namen zu. Dieser wird z.B. an der Administrations­schnittstelle benötigt. Der Name darf maximal 8 Zeichen lang sein.

BCAMAPPL = bcamappl

Bei BCAMAPPL kann der Name einer BCAMAPPL-Anweisung angegeben werden.

Ist BCAMAPPL angegeben, dann gilt die Anweisung HTTP-DESCRIPTOR nur für HTTP-Verbindungen über diesen BCAMAPPL.

Wird *ALL angegeben, dann gilt die Anweisung HTTP-DESCRIPTOR für alle HTTP-Verbindungen.

Über die BCAMAPPL-Anweisung kann auch das Scheme (HTTP/HTTPS) bestimmt werden, für das dieser HTTP-DESCRIPTOR gültig sein soll.

Der Name darf maximal 8 Zeichen lang sein.

Standard: *ALL

CONVERT-TEXT =

Der Parameter CONVERT-TEXT darf nur in BS2000-Systemen angegeben werden.

Der Parameter CONVERT-TEXT legt fest, ob UTM für Textnachrichten eine Code-Konvertierung durchführen soll oder nicht.
UTM bewertet dazu die Angaben im Content-Type Header eines HTTP-Requests sowie die Zuordnung zu einer Code-Konvertierung, die mit der Anweisung CHAR-SET definiert sind. Eine Code-Konvertierung einer HTTP-Nachricht wird u.a. nur durchgeführt, wenn zu dem im Content-Type Header angegebenen Character Set mittels der CHAR-SET Anweisung eine Code-Konvertierung zugeordnet ist.

    *YES

UTM soll für Textnachrichten eine Code-Konvertierung durchführen.

    *NO

UTM soll keine Code-Konvertierung durchführen. 

*NO ist der Standardwert.

HTTP-EXIT =

Mit dem Parameter HTTP-EXIT kann ein Anwenderprogramm festgelegt werden, das von UTM zur Umformatierung der Ein- und Ausgabenachrichten aufgerufen werden soll.

    program-name

Name des Event-Exits HTTP, der diesem HTTP-DESCRIPTOR zugeordnet werden soll. Dieser Event-Exit wird von openUTM zur Umformatierung der Ein- und Ausgabenachrichten aufgerufen. Der Event-Exit HTTP muss mit einer eigenen PROGRAM-Anweisung definiert werden.

Der Name des Anwenderprogramms darf maximal 32 Zeichen lang sein.

    *NONE

Mit der Angabe von *NONE bei HTTP-EXIT werden web-aware Programme gekennzeichnet, die die Nachrichten von HTTP-Clients direkt, d.h. ohne Umformatierung, verarbeiten können.

*NONE ist der Standardwert.

    *SYSTEM

Mit der Angabe von *SYSTEM bei HTTP-EXIT kann festgelegt werden, dass UTM für Ausgabenachrichten  eine Umsetzung in ein HTML-Format durchführen soll.

TAC = tac

Der Parameter TAC bestimmt den TAC und damit das Teilprogramm, das für Requests mit dem in dieser Anweisung spezifizierten Path aufgerufen werden soll.

Der TAC muss mit einer TAC-Anweisung definiert werden. Es darf nur ein Dialog-TAC angegeben werden

In verschiedenen HTTP-DESCRIPTOR Anweisungen darf der gleiche TAC angeben werden.

Der TAC darf maximal 8 Zeichen lang sein.

PATH =

Gemäß RFC 3986 "Uniform Resource Identifier"ist eine URI wie folgt aufgebaut:

  http://example.com:8042/over/there?name=ferret#nose

  \_/    \______________/\_________/ \_________/ \__/

   |             |            |           |        |

 scheme      authority      path        query   fragment

Der Path eines HTTP-Requests dient zur Adressierung einer Ressource. UTM verwendet den Path zur Bestimmung des Teilprogramms, dem ein HTTP-Request zugestellt werden soll.

Kann für einen eintreffenden HTTP-Request kein TAC bestimmt werden, z.B. weil kein Standard-Path (C'/*') generiert ist, dann wird der HTTP-Request mit Status-Code 404 Not Found abgelehnt.

Ein "*" als letztes Zeichen im Parameter PATH hat die Bedeutung eines Wildcard Characters, d.h über eine derartige Deklaration wird das Prefix des Path festgelegt. Stimmt der Anfang des Path eines HTTP-Requests mit einem auf diese Weise festgelegten Path-Prefix überein, dann wird dieser HTTP-DESCRIPTOR für den Request ausgewertet.

    C'path'

Der Parameter path muss folgende Bedingungen erfüllen:

  • Erstes Zeichen muss ein "/" sein.
  • Der Path darf die Zeichenfolge "//" nicht enthalten.
  • Der Path muss mindestens zwei Zeichen lang sein.
  • Die Zeichen ":", "?" sowie "#" dürfen im Path nicht vorkommen.
  • Ein '*' darf im Path höchstens als letztes Zeichen vorkommen.
  • Ist das letzte Zeichen im Path ein  '/', dann wird dieses ignoriert.
  • Der Path darf maximal 254 Zeichen lang sein.
  • Die Angabe der Zeichenfolge im Parameter PATH muss pro BCAMAPPL eindeutig sein.

KDCDEF legt den angegebenen Path normalisiert ab. Das bedeutet, dass %-codierte Ersatzdarstellungen von Unreserved Characters und von Leerzeichen in ihre äquivalente Ein-Zeichen Darstellung umgewandelt werden. Zu %-Codierungen und Unreserved Characters siehe RFC 3986.

    C'/*'

Eine Anweisung HTTP‑DESCRIPTOR mit PATH=C'/*' definiert das Standardverhalten für einen oder alle BCAMAPPL. Eine solche Deklaration wird von UTM verwendet, wenn für einen HTTP-Request auf keine andere Weise ein TAC ermittelt werden kann.
C'/*' ist der Standardwert.

USER-AUTH =

Mit dem Parameter USER-AUTH wird festgelegt, welchen Authorisierungsmechanismus Clients für diese Anwendung verwenden müssen.
Der Wert, der hier für diesen Parameter gesetzt wird, gilt für alle HTTP-Nachrichten, denen über diese HTTP-DESCRIPTOR Anweisung ein TAC zugeordnet wird.

Wenn die UTM-Anwendung ohne User generiert ist, dann darf für USER-AUTH nur der Wert *NONE angegeben werden.

    *BASIC

Zur Übergabe von Authentisierungsdaten soll das Basic-Authentication Scheme aus RFC 2617 verwendet werden. Dabei werden UserId und Passwort durch Doppelpunkt getrennt und Base64-codiert im Authorization Header eines HTTP-Requests übergeben.

Ist für einen HTTP-Request durch die Generierung Basic-Authorization definiert, aber im HTTP-Request ist kein Authorization Header enthalten, dann fordert UTM Authentisierungsdaten mittels einer Response mit Status-Code 401 Unauthorized an.

    *NONE

Ist *NONE angegeben, dann muss der Client keine Authentisierungsdaten übergeben. UTM verwendet für einen solchen Request den Verbindungs-User, falls der Client nicht von sich aus Authentisierungsiinformation in dem HTTP-Request mit schickt.

Standard: *NONE