const mixinafBedSheet::HttpRequest

afBedSheet::HttpRequest

(Service) - An injectable const version of WebReq.

This class will always refer to the current web request.

body

Source

abstract HttpRequestBody body()

Returns the request body.

headers

Source

abstract HttpRequestHeaders headers()

Map of HTTP request headers. The map is readonly and case insensitive.

@see web::WebReq.headers

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

httpMethod

Source

abstract Str httpMethod()

The HTTP request method in uppercase. Example: GET, POST, PUT.

@see web::WebReq.method

httpVersion

Source

abstract Version httpVersion()

The HTTP version of the request.

@see web::WebReq.version

isXmlHttpRequest

Source

abstract Bool isXmlHttpRequest()

Returns true if an XMLHttpRequest, as specified by the X-Requested-With HTTP header.

locales

Source

abstract Locale[] locales()

The accepted locales for this request based on the "Accept-Language" HTTP header. List is sorted by preference, where locales.first is best, and locales.last is worst. This list is guaranteed to contain Locale("en").

@see web::WebReq.locales

parseMultiPartForm

Source

abstract Void parseMultiPartForm(|Str,InStream,Str:Str callback)

This method will:

  1. check that the content-type is form-data
  2. get the boundary string
  3. invoke the callback for each part (see web::WebUtil.parseMultiPart)

For each part in the stream this calls the given callback function with the part's form name, headers, and an input stream used to read the part's body.

@see web::WebReq.parseMultiPartForm

remoteAddr

Source

abstract IpAddr remoteAddr()

The IP host address of the client socket making this request.

@see web::WebReq.remoteAddr

remotePort

Source

abstract Int remotePort()

The IP port of the client socket making this request.

@see web::WebReq.remotePort

socketOptions

Source

abstract SocketOptions socketOptions()

stash

Source

abstract Str:Obj? stash()

Stash allows you to store temporary data on the request, to easily pass it between services and objects.

It is good for a quick win, but if you find yourself consistently relying on it, consider making a thread scoped service instead.

url

Source

abstract Uri url()

The URL relative to BedSheetWebMod, includes query string and fragment. Always starts with a /.

Examples:

/a/b/index.html
/a?q=bar

This is equivalent to a local URL.

@see web::WebReq.modRel

urlAbs

Source

abstract Uri urlAbs()

The absolute request URL including the full authority and the query string. This method is equivalent to:

"http://" + headers["Host"] + path + url

where path is the request path to the current WebMod.

Examples:

http://www.foo.com/a/b/index.html
http://www.foo.com/a?q=bar

@see web::WebReq.absUri