type

WebSession

src abstract class WebSession : Obj

WebSession provides a name/value map associated with a specific browser "connection" to the web server. Any values stored in a WebSession must be both immutable and serializable. Get the current WebSession via WebReq.session.

See pod doc.

methods

delete

Delete this web session which clears both the user agent cookie and the server side session instance.

each

Iterate the key/value pairs

get

Get session value or return def if not defined.

id

Get the unique id used to identify this session.

map

Application name/value pairs which are persisted between HTTP requests.

remove

Remove a session key

set

Set a session value which must be immutable and serializable.

toStr

Return id.

Slot Details

delete

src abstract Void delete()

Delete this web session which clears both the user agent cookie and the server side session instance. This method must be called before the WebRes is committed otherwise the server side instance is cleared, but the user agent cookie will remain uncleared.

each

src abstract Void each(|Obj?,Str| f)

Iterate the key/value pairs

get

src @Operator
abstract Obj? get(Str name, Obj? def := null)

Get session value or return def if not defined.

id

src abstract Str id()

Get the unique id used to identify this session.

map

src @Deprecated { msg="Use get, set, remove, each" }
abstract Str:Obj? map()

Application name/value pairs which are persisted between HTTP requests. The values stored in this map must be serializable.

remove

src abstract Void remove(Str name)

Remove a session key

set

src @Operator
abstract Void set(Str name, Obj? val)

Set a session value which must be immutable and serializable.

toStr

src virtual override Str toStr()

Return id.