(零九)Flask有手就行——Cookie和Session

零、前言

本篇文章,阐述一下Flask中Cookie和Session

冲

  1. 为什么要说Cookie和Session呢?
    答:因为http请求是无状态的,怎么理解呢?当你访问B站时,如果你没有Cookie或者Session,B站就认为你是一个没有登录的用户。如果你有Cookie或Session,那么B站就知道你登录了,并且知道你是谁。所以可以把跟你相关的资料返回给你
  2. 两者的区别:
    答:Cookie是明文,Session是加密的Cookie。

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地址,会发现你没有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

点个赞白

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

自由小冰儿

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值