
- Flask 教程
- Flask - 首頁
- Flask - 概述
- Flask - 環境
- Flask - 應用程式
- Flask - 路由
- Flask - 變數規則
- Flask - URL 構建
- Flask - HTTP 方法
- Flask - 模板
- Flask - 靜態檔案
- Flask - 請求物件
- 將表單資料傳送到模板
- Flask - Cookie
- Flask - 會話
- Flask - 重定向和錯誤
- Flask - 訊息閃現
- Flask - 檔案上傳
- Flask - 擴充套件
- Flask - 郵件
- Flask - WTF
- Flask - SQLite
- Flask - SQLAlchemy
- Flask - Sijax
- Flask - 部署
- Flask - FastCGI
- Flask 有用資源
- Flask - 快速指南
- Flask - 有用資源
- Flask - 討論
Flask – Cookie
Cookie 以文字檔案的形式儲存在客戶端的計算機上。其目的是記住和跟蹤與客戶端使用相關的資料,以提供更好的訪客體驗和網站統計資訊。
請求物件包含 Cookie 的屬性。它是客戶端傳送的所有 Cookie 變數及其對應值的字典物件。除此之外,Cookie 還儲存其過期時間、路徑和網站的域名。
在 Flask 中,Cookie 設定在響應物件上。使用make_response()函式從檢視函式的返回值獲取響應物件。之後,使用響應物件的set_cookie()函式儲存 Cookie。
讀取 Cookie 很容易。request.cookies屬性的get()方法用於讀取 Cookie。
在下面的 Flask 應用程式中,當您訪問‘/’ URL 時,會開啟一個簡單的表單。
@app.route('/') def index(): return render_template('index.html')
此 HTML 頁面包含一個文字輸入。
<html> <body> <form action = "/setcookie" method = "POST"> <p><h3>Enter userID</h3></p> <p><input type = 'text' name = 'nm'/></p> <p><input type = 'submit' value = 'Login'/></p> </form> </body> </html>
表單釋出到‘/setcookie’ URL。關聯的檢視函式設定一個名為userID的 Cookie 並呈現另一個頁面。
@app.route('/setcookie', methods = ['POST', 'GET']) def setcookie(): if request.method == 'POST': user = request.form['nm'] resp = make_response(render_template('readcookie.html')) resp.set_cookie('userID', user) return resp
‘readcookie.html’包含到另一個檢視函式getcookie()的超連結,該函式讀取並顯示瀏覽器中的 Cookie 值。
@app.route('/getcookie') def getcookie(): name = request.cookies.get('userID') return '<h1>welcome '+name+'</h1>'
執行應用程式並訪問https://:5000/

設定 Cookie 的結果如下所示:

讀取 Cookie 的輸出如下所示。

廣告