Session (flup-compatible), caching, memoizing, and HTTP cache control middleware for WSGI. Supports memory, filesystem, database, and memcached based backends.
Simple memoization example:
from wsgistate.memory import memoize
@memoize()
def app(environ, start_response):
start_response('200 OK', [('Content-Type', 'text/plain')])
return ['Hello World!']
if __name__ == '__main__':
from wsgiref.simple_server import make_server
http = make_server('', 8080, app)
http.serve_forever()
Simple session example:
from wsgistate.memory import session
@session()
def app(environ, start_response):
session = environ['com.saddi.service.session'].session
count = session.get('count', 0) + 1
session['count'] = count
start_response('200 OK', [('Content-Type', 'text/plain')])
return ['You have been here %d times!' % count]
if __name__ == '__main__':
from wsgiref.simple_server import make_server
http = make_server('', 8080, app)
http.serve_forever()