classafBedSheet::HttpRequestHeaders

sys::Obj
  afBedSheet::HttpRequestHeaders

A wrapper for HTTP request headers with accessors for commonly used headings.

Note that the accessors are safe and will return null, rather than throw an Err, when they encounter a dodgy header value.

@see http://en.wikipedia.org/wiki/List_of_HTTP_header_fields

accept

Source

QualityValues? accept { private set }

Content-Types that are acceptable for the response.

Example: Accept: audio/*; q=0.2, audio/basic

acceptEncoding

Source

QualityValues? acceptEncoding { private set }

List of acceptable encodings.

Example: Accept-Encoding: compress;q=0.5, gzip;q=1.0

acceptLanguage

Source

QualityValues? acceptLanguage { private set }

List of acceptable human languages for the response.

Example: Accept-Language: da, en-gb;q=0.8, en;q=0.7

authorization

Source

Str? authorization { private set }

Authorization header. For BASIC authorisation, the credentials should have been encoded like this:

creds := "Basic " + "${username}:${password}".toBuf.toBase64 

Example: Authorization: Basic QWxhZGRpbjpPcGVuU2VzYW1l

contentLength

Source

Int? contentLength { private set }

The length of the request body in octets (8-bit bytes).

Example: Content-Length: 348

contentType

Source

MimeType? contentType { private set }

The MIME type of the body of the request (used with POST and PUT requests)

Example: Content-Type: application/x-www-form-urlencoded

cookies

Source

Cookie[]? cookies { private set }

HTTP cookies previously sent by the server with Set-Cookie.

Example: Cookie: Version=1; Skin=new;

each

Source

Void each(|Str,Str c)

Call the specified function for every key/value in the header map.

fromMap

Source

new fromMap(Str:Str headers)

Creates a new instance with the given map.

get

Source

@Operator
Str? get(Str name)

Returns the associated HTTP header.

host

Source

Str? host { private set }

The domain name of the server (for virtual hosting), and the TCP port number on which the server is listening. The port number may be omitted if the port is the standard port for the service requested.

Example: Host: www.alienfactory.co.uk:8069

ifModifiedSince

Source

DateTime? ifModifiedSince { private set }

Allows a 304 Not Modified to be returned if content is unchanged.

Example: If-Modified-Since: Sat, 29 Oct 1994 19:43:31 GMT

ifNoneMatch

Source

Str? ifNoneMatch { private set }

Allows a 304 Not Modified to be returned if content is unchanged.

Example: If-None-Match: "737060cd8c284d8af7ad3082f209582d"

keys

Source

Str[] keys()

Returns a list of all the response header keys.

origin

Source

Uri? origin { private set }

Initiates a request for cross-origin resource sharing.

Example: Origin: http://www.example-social-network.com/

referrer

Source

Uri? referrer { private set }

This is the address of the previous web page from which a link to the currently requested page was followed.

Example: Referer: http://en.wikipedia.org/wiki/Main_Page

userAgent

Source

Str? userAgent { private set }

The user agent string of the user agent.

Example: User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/21.0

val

Source

Str:Str val()

Returns a read only map of the request headers.

xForwardedFor

Source

Str[]? xForwardedFor { private set }

Identifies the originating IP address of a client connecting through an HTTP proxy.

Example: X-Forwarded-For: client, proxy1, proxy2

xRequestedWith

Source

Str? xRequestedWith { private set }

Mainly used to identify Ajax requests.

Example: X-Requested-With: XMLHttpRequest