Flask 的上下文物件

2021-10-01 10:10:09 字數 804 閱讀 9646

上下文:相當於乙個容器,儲存了flask程式執行過程中的一些資訊。

flask中有兩種上下文,請求上下文和應用上下文。

request和session都屬於請求上下文物件。

request:封裝了http請求的內容,針對的是http請求。舉例:user = request.args.get('user'),獲取的是get請求的引數。

session:用來記錄請求會話中的資訊,針對的是使用者資訊。舉例:session['name'] = user.id,可以記錄使用者資訊。還可以通過session.get('name')獲取使用者資訊。

map([url_for_test>,

hello_send>,

post_only>,)

in [5]: context.push()

out[6]: 'hello'

g:處理請求時,用於臨時儲存的物件,每次請求都會重設這個變數。比如:我們可以獲取一些臨時請求的使用者資訊。

request 在每次http請求發生時,wsgi server呼叫flask.call();然後在flask內部建立的request物件;

最終傳入檢視函式,通過return、redirect或render_template生成response物件,返回給客戶端。

區別:請求上下文:儲存了客戶端和伺服器互動的資料。 應用上下文:在flask程式執行過程中,儲存的一些配置資訊,比如程式檔名、資料庫的連線、使用者資訊等。

flask的請求上下文request物件

flask從客戶端收到請求時,要讓檢視函式能訪問請求物件request 才能處理請求。我們可以將request物件作為引數傳到試圖函式裡,比如 from flask import flask,request def hello world request 在這裡將request物件作為引數傳進來 d...

flask 上下文的實現

本文使用flask 0.5 版本 request context request gsession request 指的是每次http請求發生時,wsgi server 比如gunicorn 呼叫flask.call 之後,在flask物件內部建立的request物件 下面通過原始碼了解一下flas...

Flask中的上下文

上下文 相當於乙個容器,儲存了 flask 程式執行過程中的一些資訊。flask中有兩種上下文,請求上下文和應用上下文 在 flask 中,可以直接在檢視函式中使用 request 這個物件進行獲取相關資料,而 request 就是請求上下文的物件,儲存了當前本次請求的相關資料,請求上下文物件有 r...