abstract class web::WebRes

sys::Obj
  web::WebRes

Source

WebRes encapsulates a response to a web request.

See pod doc

cookies

abstract Cookie[] cookies()

Source

Get the list of cookies to set via header fields. Add a a Cookie to this list to set a cookie. Throw an err if response is already committed.

Example:

res.cookies.add(Cookie("foo", "123"))
res.cookies.add(Cookie("persistent", "some val") { maxAge = 3day })
done

abstract Void done()

Source

Done is called to indicate that that response is complete to terminate pipeline processing.

headers

abstract Str:Str headers()

Source

Map of HTTP response headers. You must set all headers before you access out() for the first time, which commits the response. Throw an err if response is already committed.

isCommitted

abstract Bool isCommitted()

Source

Return true if this response has been commmited. A committed response has written its response headers, and can no longer modify its status code or headers. A response is committed the first time that out is called.

isDone

abstract Bool isDone()

Source

Return if this response is complete - see done.

out

abstract WebOutStream out()

Source

Return the WebOutStream for this response. The first time this method is accessed the response is committed: all headers currently set will be written to the stream, and can no longer be modified. If the "Content-Length" header defines a fixed number of bytes, then attemps to write too many bytes will throw an IOErr. If "Content-Length" is not defined, then a chunked transfer encoding is automatically used.

redirect

abstract Void redirect(Uri uri, Int statusCode := 303)

Source

Send a redirect response to the client using the specified status code and url. If this response has already been committed this method throws an Err. This method implicitly calls done.

removeCookie

Void removeCookie(Str name)

Source

Remove a cookie for this response. This method is a convenience for:

res.cookies.add(Cookie(name, "") { maxAge=0day }
sendErr

abstract Void sendErr(Int statusCode, Str? msg := null)

Source

Send an error response to client using the specified status and HTML formatted message. If this response has already been committed this method throws an Err. This method implicitly calls done.

statusCode

abstract Int statusCode

Source

Get or set the HTTP status code for this response. Status code defaults to 200. Throw an err if the response has already been committed.

statusMsg

const static Int:Str statusMsg := ...

Source

Map of HTTP status codes to status messages.

statusPhrase

abstract Str? statusPhrase

Source

Reason phrase to include in HTTP response line. If null, then a status phrase is used based on the statusCode.