Próbuję zrozumieć różnice w funkcjonalności i celu między g
i session
. Oba są obiektami do "zawieszenia" danych sesji, czy mam rację? Jeśli tak, to jakie dokładnie są różnice i jakich należy użyć w jakich przypadkach?Kolba: "sesja" kontra "g"?
29
A
Odpowiedz
40
Nie, jest nie obiektu do zawieszenia danych sesji. g
Dane nie są zachowywane między żądaniami.
session
udostępnia miejsce do przechowywania danych dla określonej przeglądarki. Jako użytkownik Twojej aplikacji Flask, używając określonej przeglądarki, zwraca więcej żądań, dane sesji są przenoszone na te żądania.
g
z drugiej strony to dane dzielone między różnymi częściami bazy kodu ciągu jeden żądanie cyklu. g
może być skonfigurowany podczas haków before_request
, jest nadal dostępny w fazie teardown_request
, a po wysłaniu żądania i wysłaniu go do klienta zostaje wyczyszczony g
.
Powiązane problemy
- 1. g ++ kontra Intel/Clang argument przekazujący zamówienie?
- 2. Kolba-Admin + (kolba Login i/lub Kolba-Principal)
- 3. przedłużenie Kolba-Session vs domyślnej sesji
- 4. Kolba mongoengine paginacja
- 5. Kolba zamieszanie z aplikacji
- 6. kolba: error_handler dla planów
- 7. Kolba: weryfikacja CSRF udało
- 8. Kolba Jsonify mongoengine zapytania
- 9. Kolba SQLAlchemy błąd paginacja
- 10. przykład kolba z POST
- 11. Kolba-admin rozciągające szablony
- 12. pyton kolba ImmutableMultiDict
- 13. Kolba broken pipe wniosków
- 14. Projektowanie aplikacji internetowych: sesja lub sesja mniej
- 15. Dlaczego \ G w SELECT * FROM nazwa_tabeli \ G?
- 16. Globalna zmienna i pythonowa kolba
- 17. Kolba: Get wielkość request.files sprzeciw
- 18. Tworzenie dekorator Kolba url publicznego
- 19. Kolba - Kiedy używać send_file/send_from_directory
- 20. Błąd niestandardowego kolba JSON Strona
- 21. Dlaczego kolba url_for zbyt powolne
- 22. Dane użytkowników ASP.NET MVC w plikach cookie uwierzytelniania formularzy kontra sesja dodająca do sesji
- 23. Angular.js kontra Knockout.js kontra Backbone.js
- 24. nodejs/express. sesja regeneracji
- 25. Sesja i wątki
- 26. Sesja ASP.NET i LINQ
- 27. Sesja w klejnocie Rails_API
- 28. Jednoosobowa sesja na singleton?
- 29. CodeIgniter limit rozmiaru sesja
- 30. "Sesja jest zamknięta!" - NHibernate
Więc 'sesja' to dane" na kliencie "(w oparciu o plik cookie?), A' g' to dane na żądanie? –
@AvivCohn: dokładnie. Zaletą 'g' jest to, że istnieje we wszystkich twoich żądaniach, jest bezpieczne dla wątków i specyficzne dla twojej bieżącej aplikacji (gdybyś miał * zagnieżdżać * aplikacje Flask, w których jeden wywołuje inny, staje się ważny). Możesz więc ustawić obiekt użytkownika lub połączenie z bazą danych za pomocą haka 'before_request', a następnie uzyskać dostęp do tego samego użytkownika lub połączenia w szablonach i nadal mieć dostęp do haka przerywanego bez konieczności przesyłania go do każdego połączenia. –