1. 程式人生 > >python三大框架之一flask中cookie和session的相關操作

python三大框架之一flask中cookie和session的相關操作

狀態保持

Cookie

cookie 是指某些網站為了 辨別  使用者身份,進行會話跟蹤而儲存在使用者本地的資料(通常會經過加密),複數形式是 coolies.

cookie是由伺服器端生成,傳送給客戶端瀏覽器,瀏覽器會見Cookie中的key和value儲存,下一次請求同一個瀏覽器時發給cookie服務端(前提是瀏覽器設定為啟用cookie),cookie中的key和value可以由服務端自己定義。

cookie基本應用在判斷註冊使用者是否登陸網站,網站的廣告推送,購物車等。

小提示:

因為cookie是儲存在瀏覽器上的文字資訊,有可能會被其他人使用,建議不要儲存敏感資訊;

cookie基於域名安全,不同域名的cookie是不能互相訪問的。

 

cookie的應用

#cookie相關操作,以來make_response庫,呼叫cookie依賴request模組 from flask import Flask,make_response,request
#建立物件 app =Flask(__name__) #從配置檔案中載入配置 app. config.from_pyfile('config.ini')
@app.route('/') def index():
return '這是首頁'
#存cookie的方法 @app.route('/setcookie') def set_cookie(): resp = make_response('儲存cookie') #使用方法set_cookie來儲存key-value形式的資料,可以新增存活時間 resp.set_cookie('productnamae','[衛生紙','膠布]',max_age=3600)       #在儲存cookie時,可以設定過期時間
return resp
#呼叫cookie的方法 @app.route("/getcookie") def get_cookie(): #通過request模組的cookies模組的get方法,指定key呼叫value resp = request.cookies.get('productnamae') return resp
#刪除模組 @app.route('/delecookie') def del_cookie(): #通過make_response物件內建的delete_cookie方法,指定key呼叫value resp = make_response('刪除cookie') resp.delete_cookie('productnamae') return resp #程式入口
if __name__ == "__main__": app.run()   session 對於敏感,重要的資訊,建議儲存到伺服器端,不能儲存到瀏覽器中,如使用者名稱,餘額,密碼等,在服務端進行狀態保持的方案就是Session sessoin依賴於cookie. session:請求上下文物件,用於處理HTTP請求中的一些資料   應用 #session是依賴於flask的session模組 #如果想使用sessi模組,必須在配置裡新增 from flask import Flask,session
#建立物件 app = Flask(__name__)

#從配置檔案中載入配置 app.config.from_pyfile('config.ini')
@app.route('/') def index(): return '我是首頁,session'

#儲存session的方法 @app.route('/set_session') def set_session(): #直接使用session對儲存的內容復值 session['username'] = '你好' return '儲存session成功'
#呼叫session方法 @app.route('/get_session') def get_session(): #通過session直接對內容進行呼叫 se = session['username'] return se
#刪除session方法 @app.route('/del_session') def del_session(): #通過session的post方法指定key刪除value session.pop('username') return '刪除成功'
if __name__ == "__main__": app.run()