Your Browser is not longer supported

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

{{viewport.spaceProperty.prod}}

Evaluation of the HTTP Header of an HTTP request

openUTM evaluates the following header fields in an HTTP request.  If the HTTP request contains additional HTTP headers, these are not evaluated by openUTM. However, an application program can read and evaluate these headers with the functions kcHttpGetHeaderByIndex or kcHttpGetHeaderByName.

In the following list of header fields evaluated by openUTM, the header fields that can be included in an HTTP request are marked as "Optional" and the header fields that must be included in an HTTP request are marked as "Mandatory":

  • Accept
    Optional
    With this header a client expresses its expectations concerning the representation of the reply message.
    openUTM uses this header to format the output message if no HTTP descriptor or an HTTP descriptor with HTTP-EXIT=*SYSTEM specification was found. The header value is searched for these patterns in the following order:
    1. text/html
    2. text/plain
    3. text/* (effect like text/html)
    4. application/octet-stream
    If none of these values are found, the output message is treated like text/html.
  • Accept-Charset
    Optional
    With this header a client expresses its expectations regarding the coding of the response message.
    BS2000 systems:
    The header value is searched for a generated CHAR-SET name. The first CHAR-SET alias found determines the code conversion of the output message. If no CHAR-SET name is found, the default conversion of openUTM is used.
    Unix, Linux and Windows systems:
    No evaluation done by openUTM. On Unix, Linux and Windows systems there is no code conversion of the output message.
  • Authorization
    Optional
    In this header, a client can pass authentication data to openUTM.
    If this header is specified, the value must begin with "basic ". <userid>:<password> must be base64 encoded. Otherwise the request will be rejected with status code "400 invalid http header format".
  • Connection
    Optional
    This header allows a client to specify whether or not the server should terminate the connection after sending the response message.
    Only the header value "keep-alive" is evaluated. If this value is specified, openUTM does not close the connection to the client after sending the output message. Otherwise the connection will be terminated by openUTM after sending the HTTP response.
  • Content-Length
    Mandatory if the request contains a message body.
    The HTTP client must supply this header with the correct length of the message body.
    If an HTTP request is received with a message body and no content length header is specified, the message body is ignored.
  • Content-Type
    Optional
    This header field describes the MIME type of the message contained in the message body.
    BS2000 systems:
    If an HTTP descriptor is found for the path that is generated with CONVERT-TEXT=*YES, a generated CHAR-SET name specified after "charset=" determines the code conversion of the input message, unless APPLICATION/OCTET-STREAM is found. If no CHAR-SET name is found, the standard conversion of the input message takes place.
    Unix, Linux and Windows systems: 
    No evaluation by openUTM. 
    On Unix, Linux and Windows systems there is no code conversion of the input message.
  • Expect
    Optional
    With this header, a client can request the server to check the correctness of the sent HTTP request before the client sends the message body.
    The header value must be "100-continue". In this case, the HTTP client can wait for the openUTM response with status code 100 before sending the message body. If the header value is not "100-continue", the HTTP request is rejected with status code "417 expectation failed".
  • Host
    Mandatory
    An HTTP client must supply this header with the name of the HTTP server.
  • Transfer-Encoding
    Optional
    If this header is specified, then the value must be "identity". Otherwise, the request is rejected with status code "501 transfer encoding rejected".