Sto cercando di capire le differenze di funzionalità e scopo tra g
e session
. Entrambi sono oggetti per "appendere" i dati della sessione, ho ragione? Se sì, quali sono esattamente le differenze e quale dovrei usare in quali casi?Flask: "sessione" vs. "g"?
29
A
risposta
40
No, g
è non un oggetto su cui appendere i dati di sessione. I dati g
non vengono mantenuti tra le richieste.
consente di memorizzare i dati per browser specifico. Come utente della tua app Flask, utilizzando un browser specifico, restituisce per più richieste, i dati della sessione vengono trasferiti attraverso tali richieste.
g
d'altra parte è di dati condivisi tra le diverse parti del codice di base entro uno richiesta ciclo. g
può essere impostato durante gli hook before_request
, è ancora disponibile durante la fase teardown_request
e una volta che la richiesta è stata eseguita e inviata al client, g
viene cancellato.
Problemi correlati
- 1. estensione Flask-Session vs sessione predefinita
- 2. g: include vs g: render
- 3. Flask - Come ottenere ID sessione
- 4. Flask MethodView vs Flask-Restful Resource
- 5. Flask request.args vs request.form
- 6. gcc -g vs not -g e strip vs non strip, prestazioni e utilizzo della memoria?
- 7. Flask-SQLAlchemy InvalidRequestError: L'oggetto è già collegato alla sessione
- 8. La sessione Flask dimentica l'immissione tra le richieste
- 9. Come posso rilevare se esiste una variabile nella sessione Flask?
- 10. Flask 0.10 dando errore unicode su cookie di sessione
- 11. espresso negozio sessione MongoDB: connect-mongo vs collegare-mongodb sessione
- 12. bean gestito con scope sessione vs bean stateful vs httpsession
- 13. Accesso sessione vs autenticazione HTTP. Vantaggi Svantaggi
- 14. ColdFusion client vs variabili di sessione
- 15. ASP.NET WebApi Sessione vs variabili statiche
- 16. L'opzione g ++ -g equivalente al compilatore cl VS2010?
- 17. g ++ flag di ottimizzazione: -fuse-linker-plugin vs -fwhole programma
- 18. Perché devo usare typedef typename in g ++ ma non VS?
- 19. Decltype e funzioni amico in Visual Studio vs G ++
- 20. GCC -g vs -g3 GDB Flag: Qual è la differenza?
- 21. Flask SQLAlchemy Set expire_on_commit = False
- 22. Flask-Admin + (Flask-Login e/o Flask-Principal)
- 23. Perché \ G in SELECT * FROM nome_tabella \ G?
- 24. Cosa significa s/\ G/0/g?
- 25. #define f (g, g2) g ## g2
- 26. Tipo di f g x = g. gx
- 27. g ++ errore stringa remove_if
- 28. Flask-auth, Principal and Flask Security
- 29. DatePickerWidget con Flask, Flask-Admin e WTforms
- 30. Implementazione campo Select2 in flask/flask-admin
Quindi 'session' è 'per client' (basato su un cookie?) E' g' sono dati per richiesta? –
@AvivCohn: esattamente. Il vantaggio di 'g' è che esiste su tutta la tua richiesta, è thread-safe e specifico per la tua app corrente (se dovessi * nidificare * le applicazioni Flask dove una chiama un'altra diventa importante). In questo modo è possibile impostare un oggetto utente o una connessione al database con un hook 'before_request', quindi accedere allo stesso utente o connessione nei modelli e continuare a essere disponibili in un hook di rimozione senza doverlo passare ad ogni chiamata. –