Python?Flask中Cookie和Session區(qū)別詳解
前言
本篇文章,闡述一下Flask中Cookie和Session
為什么要說Cookie和Session呢?
答:因為http請求是無狀態(tài)的,怎么理解呢?當你訪問B站時,如果你沒有Cookie或者Session,B站就認為你是一個沒有登錄的用戶。如果你有Cookie或Session,那么B站就知道你登錄了,并且知道你是誰。所以可以把跟你相關的資料返回
給你兩者的區(qū)別:
答:Cookie是明文,Session是加密的Cookie。
安裝
創(chuàng)建虛擬環(huán)境
mkdir myproject cd myproject python3 -m venv venv
進入虛擬環(huán)境
. venv/bin/activate
安裝 flask
pip install Flask
Cookie的使用
from flask import Flask, Response, request
app = Flask(__name__)
@app.route("/set_cookie")
def set_cookie():
response = Response("set cookie success")
response.set_cookie("user_id","123")
return response
@app.route("/get_cookie")
def get_cookie():
cookies = request.cookies
if cookies.get("user_id") == "123":
return "尊敬的用戶你好,你的cookies是" + str(cookies)
else:
return "你不是VIP,請先獲取身份"
if __name__ == "__main__":
app.run(debug=True,port=5000)第一次首先訪問/home地址,會發(fā)現(xiàn)你沒有Cookie給你返回一個你不是VIP,請先獲取身份
但是當我們首先訪問/set_cookie,我們就會獲得一個cookie,然后我們在訪問/home地址,就可以成功的顯示尊敬的用戶您好了
Session的使用
from flask import Flask, session
app = Flask(__name__)
# ?。?!你需要設置一個SECRET_KEY用來加密Cookie
app.config["SECRET_KEY"] = "123"
@app.route("/set_session")
def set_session():
session["user_name"] = "zhuxiaoxiao"
return "設置session成功" + session["user_name"]
@app.route("/home")
def home():
if session.get("user_name") == "zhuxiaoxiao":
return "尊敬的用戶,登錄成功"
else:
return "請先登錄好嗎?"
if __name__ == "__main__":
app.run(debug=True,port=5000)- Session的使用方式整體和Cookie是一樣的。
- 需要注意的是使用Session前,必須要進行設置
SECRET_KEY,用來加密Cookie
到此這篇關于Python Flask中Cookie和Session區(qū)別詳解的文章就介紹到這了,更多相關Python Cookie Session 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Python?matplotlib包和gif包生成gif動畫實戰(zhàn)對比
使用matplotlib生成gif動畫的方法相信大家應該都看到過,下面這篇文章主要給大家介紹了關于Python?matplotlib包和gif包生成gif動畫對比的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-05-05
Python使用Bokeh實現(xiàn)交互式圖表的創(chuàng)建
Bokeh?是一個流行的?Python?數(shù)據可視化庫,可以生成高質量的交互式圖表,這篇文章主要就介紹了Python如何使用Bokeh實現(xiàn)交互式圖表的創(chuàng)建,需要的可以參考一下2023-06-06
Django在urls.py利用函數(shù)path()配置路由時傳遞參數(shù)給調用的視圖函數(shù)的方法(推薦)
這篇文章主要介紹了Django在urls.py利用函數(shù)path()配置路由時傳遞參數(shù)給調用的視圖函數(shù)的方法(推薦),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2024-01-01
Python TCPServer 多線程多客戶端通信的實現(xiàn)
這篇文章主要介紹了Python TCPServer 多線程多客戶端通信的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-12-12
mac PyCharm添加Python解釋器及添加package路徑的方法
今天小編就為大家分享一篇mac PyCharm添加Python解釋器及添加package路徑的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10

