溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Python?Flask中Cookie和Session區(qū)別是什么

發(fā)布時(shí)間:2022-07-27 17:31:32 來源:億速云 閱讀:150 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹“Python Flask中Cookie和Session區(qū)別是什么”,在日常操作中,相信很多人在Python Flask中Cookie和Session區(qū)別是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Python Flask中Cookie和Session區(qū)別是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

安裝

創(chuàng)建虛擬環(huán)境

mkdir myproject
cd myproject
python3 -m venv venv

進(jìn)入虛擬環(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,請先獲取身份

但是當(dāng)我們首先訪問/set_cookie,我們就會獲得一個cookie,然后我們在訪問/home地址,就可以成功的顯示尊敬的用戶您好了

Session的使用

from flask import Flask, session
app = Flask(__name__)
# ?。?!你需要設(shè)置一個SECRET_KEY用來加密Cookie
app.config["SECRET_KEY"] = "123"
@app.route("/set_session")
def set_session():
    session["user_name"] = "zhuxiaoxiao"
    return "設(shè)置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前,必須要進(jìn)行設(shè)置SECRET_KEY,用來加密Cookie

到此,關(guān)于“Python Flask中Cookie和Session區(qū)別是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI