Flask session詳細用法

2021-09-12 02:43:38 字數 2253 閱讀 8685

session是基於cookie實現的,儲存在服務端的鍵值對,形式為{隨機字串:『******』},同時在瀏覽器中的cookie中也會儲存相同的隨機字串,用來再次請求時驗證

注意:flask中的session是儲存在瀏覽器中的,預設的key是session(加密的cookie),當然也可以將其儲存在資料庫中

flask中有乙個session物件,它允許你在不同請求間儲存特定使用者的資訊。它是在cookie的基礎上實現的,並且對cookie進行金鑰簽名要使用會話,你需要設定乙個金鑰

同request一樣,session基於上下文管理

配置secret_key

因為flask的session是通過加密後儲存在cookie中的,有加密就需要有解密用的金鑰,所以只要用到了flask的session模組,就一定要配置』secret_key』這個全域性巨集。一般設定為24位的字元。配置方法有兩種

配置方法一:

新建乙個config.py檔案配置secret_key

config.py

secret_key='*********x'
然後在主執行檔案裡面新增config檔案裡面的內容

main.py

from flask import flask,session

import config

配置方法二:

直接在主執行模組裡面配置,配置config的時候也是和操作字典是一樣的

main.py

from flask import flask,session
#增

session['username']='helloworld'

#查result=session['key'] ###如果key不存在,會raise error

result=session.get('key') ###如果key不存在,返回none

#刪session.pop('key')

#清空session

使用者請求的request進來,例項化requestcontext,建立request_context物件,初始化session為空

當接受到使用者請求之後,會呼叫flask物件的session_inte***ce物件的open_session方法,以此來獲取乙個session物件。

資料返回給使用者,並把內容中的session重新儲存

由上面兩張中的**可以看出,session確實是儲存在瀏覽器中的。

這個博主寫的很好,就直接貼鏈結了,侵刪

基於Flask session機制的單點登入

flask 預設的是 client side session flask by default usesthe werkzeug provided secure cookie as session system.it works by picklingthe session data,compres...

ofstream和ifstream詳細用法

ofstream是從記憶體到硬碟,ifstream是從硬碟到記憶體,其實所謂的流緩衝就是記憶體空間 在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設的標準輸出流 ...

ofstream和ifstream詳細用法

標籤 c 檔案ofstream是從記憶體到硬碟,ifstream是從硬碟到記憶體,其實所謂的流緩衝就是記憶體空間 在c 中,有乙個stream這個類,所有的i o都以這個 流 類為基礎的,包括我們要認識的檔案i o,stream這個類有兩個重要的運算子 1 插入器 向流輸出資料。比如說系統有乙個預設...