geheime Schlüssel nicht in Kolben-Sitzung über die Kolben-Session Erweiterung

Recht, jetzt bin ich mit einem Fläschchen 3rd-party-Bibliothek Kolben-Sitzung und ich habe kein Glück immer eine Sitzung zu arbeiten.

Wenn ich eine Verbindung zu meiner Website, bekomme ich die folgende Fehlermeldung:

Absturz mit Laufzeitfehler: die Sitzung ist nicht verfügbar, da kein geheimer Schlüssel war
set. Setzen Sie den secret_key auf die Anwendung, um etwas einzigartiges und
secret.

Unten ist mein server code.

from flask import Flask, session
from flask.ext.session import Session

SESSION_TYPE = 'memcache'

app = Flask(__name__)
sess = Session()

nextId = 0

def verifySessionId():
    global nextId

    if not 'userId' in session:
        session['userId'] = nextId
        nextId += 1
        sessionId = session['userId']
        print ("set userid[" + str(session['userId']) + "]")
    else:
        print ("using already set userid[" + str(session['userId']) + "]")
    sessionId = session.get('userId', None)
    return sessionId

@app.route("/")
def hello():
    userId = verifySessionId()
    print("User id[" + str(userId) + "]")
    return str(userId)

if __name__ == "__main__":
    app.secret_key = 'super secret key'

    sess.init_app(app)

    app.debug = True
    app.run()

Wie Sie sehen können, habe ich die app secret key. Was mache ich falsch?

Gibt es andere session-Optionen?

Weitere Infos:
Ausführen von Python 2.7 auf Linux Mint

Volle einfügen:

Traceback (most recent call last):
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1836, in __call__
    return self.wsgi_app(environ, start_response)
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
    response = self.full_dispatch_request()
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1477, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1381, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1475, in full_dispatch_request
    rv = self.dispatch_request()
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/app.py", line 1461, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/home/sean/code/misc/session/sessiontest.py", line 27, in hello
    userId = verifySessionId()
  File "/home/sean/code/misc/session/sessiontest.py", line 16, in verifySessionId
    session['userId'] = nextId
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/werkzeug/local.py", line 341, in __setitem__
    self._get_current_object()[key] = value
  File "/home/sean/code/misc/hangman/venv/lib/python2.7/site-packages/flask/sessions.py", line 126, in _fail
    raise RuntimeError('the session is unavailable because no secret '
RuntimeError: the session is unavailable because no secret key was set.  Set the secret_key on the application to something unique and secret.
  • Was ist die vollständige traceback der exception?
  • Und welche version von Flask-Session verwenden Sie? Ich finde keine Referenz der Ausnahme, dass in den aktuelle Projekt Quelle.
  • Irgendeine Idee, wie ich das herausfinden könnten? Ich habe gerade ein pip installieren für Sie
  • Finden Sie die Ausnahme Nachricht schon; es ist im Kolben selbst, nicht auf Kolben-Sitzung.
  • Ich fügte hinzu, die vollständige Rückverfolgung. Es erscheint, wenn ich Versuch, die 'userId' key, wie Sie sehen können
InformationsquelleAutor MintyAnt | 2014-09-28
Schreibe einen Kommentar