2015-01-02 6 views
6

Durante l'importazione del pallone, importiamo moduli come la sessione ecc.come faccio a cancellare una sessione di un pallone?

SecureCookieSession è un tipo di dizionario accessibile tramite sessione.

Ora cerco di cancellare tutte le variabili spazzatura che ho usato durante il tentativo di costruire un sito web.

Una delle risposte su StackOverflow utilizzava un comando come session.clear() per cancellare il contenuto di una sessione. Ma un tale comando dà un errore che nessun comando di questo tipo esiste.

Qualcuno può aiutarmi a chiarire il SecureCookieSession e come cancellare la sessione ogni volta che chiudo il server o chiudo il sito Web?

risposta

-8

Non v'è alcun modo per clear sessione o niente.

Si deve semplicemente cambiare il app.config["SECRET_KEY"] ei contenuti nel dizionario sessione sia cancellato.

+0

Come postato qui sotto, la sessione può essere cancellato utilizzando 'Session.clear()' e compresa questa importazione 'da importazione pallone session' – tw1742

+1

Facendo che si invalidare tutti i tuoi visitatori cookie in una sola volta e li costringono a ri- login –

19
from flask import session 

session.clear() 

Io uso sessione come questo con la boccetta, funziona. Non uso il SecureCookieSession, ma forse può essere d'aiuto.

+0

** Nota: ** Se si utilizza anche i messaggi balenò nella propria applicazione, si dovrebbe considerare che balenò messaggi vengono memorizzati nella sessione e possono, quindi, essere cancellati prima di essere un lampo se si cancella la sessione. – alejandro

12

È possibile anche scorrere la sessione e chiamare session.pop() per ogni chiave nella sessione. Pop rimuoverà la variabile dalla sessione e non dovrai continuare ad aggiornare la tua chiave segreta.

for key in session.keys(): 
    session.pop(key) 
+0

Dovrebbe essere 'session.pop (chiave)' invece di 'session.pop [tasto]' –

+0

Buona cattura! Modificato – TheF1rstPancake

+1

dovrebbe essere accettato risposta – Adders