mysnapsession

Sessions and continuations for Snap web apps

Latest on Hackage:0.4.1

This package is not currently in any snapshots. If you're interested in using it, we recommend adding it to Stackage Nightly. Doing so will make builds more reliable, and allow stackage.org to host generated Haddocks.

BSD-3-Clause licensed and maintained by Chris Smith

This package provides two Snap extensions, implementing sessions as either memory-backed arbitrary types, or as client-side cookie-backed serializable types. The latter uses the clientsession package to encrypt the cookie for security. In both extensions, sessions are protected from session stealing by checking the source IP address, and have a configurable timeout (optional for the cookie- backed back end). The session type is user-defined.

In addition, a library is provided for a continuation- based programming model called dialogues, which allows natural specification of stateful interactions with the client that span multiple requests. Because the session type is not serializable, this requires the memory-backed implementation.