The furnace.sessions vocabulary implements session management, which allows state to be maintained between HTTP requests. The session state is stored on the server; the client receives an opaque ID which is saved in a cookie (for GET requests) or a hidden form field (for POST requests).

To use session management, wrap your responder in an session manager:
<sessions> ( responder -- responder' )

The sessions responder must be wrapped inside a database persistence responder ( <db-persistence> ). The furnace.alloy vocabulary combines all of these responders into one.

Reading and writing session variables from a request:
sget ( key -- value )

sset ( value key -- )

schange ( key quot -- )

Additional topics:
Session manager configuration
Session state serialization