Kleines Beispiel: Sessions mit CherryPy

Code-Stücke können hier veröffentlicht werden.
Antworten
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

Die Verwendung von Sessions muss über die Konfiguration eingeschaltet werden.

Code: Alles auswählen

#!/usr/bin/env python
# -*- coding: iso-8859-15 -*-

import cherrypy
import time


class Root(object):
    
    def settime(self):
        # http://localhost:8080/settime
        cherrypy.session["zeit"] = time.asctime()
        return "Sessionvariable gesetzt"
    settime.exposed = True
    
    
    def gettime(self):
        # http://localhost:8080/gettime
        return cherrypy.session.get("zeit", "nicht gesetzt")
    gettime.exposed = True


def main():
    app = cherrypy.tree.mount(Root())
    cherrypy.config.update(
        {
            "tools.sessions.on": True,
            "tools.sessions.storage_type": "file", # überlebt auch einen Neustart
            "tools.sessions.storage_path": ".", # muss angepasst werden
            "tools.sessions.timeout": 60, # Minuten
        }
    )
    cherrypy.quickstart(app)


if __name__ == "__main__":
    main()
Die Konfiguration kann man natürlich auch in eine INI-Datei auslagern.

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Da häng ich gleich mal das gleiche Beispiel aber für Werkzeug an und mit Client-seitigen Sessions: http://dev.pocoo.org/projects/werkzeug/ ... ecookie.py

Ich geb zu, es hat 10 Zeilen mehr, ist aber auch wesentlich schneller ;-)
TUFKAB – the user formerly known as blackbird
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

mitsuhiko hat geschrieben:Da häng ich gleich mal das gleiche Beispiel aber für Werkzeug an und mit Client-seitigen Sessions:
Hallo mitsuhiko!

Mach doch einen eigenen Topic daraus. "Kleines Beispiel: Sessions mit Werkzeug"

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten