引言 本文将介绍在Flask中操作cooie、session的相关流程、常用方法 学习内容:
- cookie:依赖库(Flask内置)、常用方法
- session:依赖库(Flask内置)、前提条件(已设置:app.secret_key=”指定secret_key”)、常用方法
说明本文是基础操作cookie、session,不会涉及session的持久化。
https://e.coding.net/cooling37/mp-flask/mp-api.git
1.概述
2.Flask操作cookie
在Flask中操作cookie,我们需要依赖make_response()对象。借用make_response()对象的set_cookie()【设置cookie】、delete_cookie【删除cookie】进行相关操作。
1.操作流程介绍
2.常用方法
操作项 | 方法 | 备注 |
---|---|---|
设置cookie | make_response().set_cookie(key,value) | 对cookie的操作都需要依赖“make_response()对象” |
删除cookie | make_response().delete_cookie(key) |
3.代码实现
1.设置cookie
1.具体代码实现
from flask import Blueprint as bp
from flask import make_response # 【step1】导包
cookieKey = "mp-cookie"
cookieApp = bp("cookieApp", __name__, url_prefix="/cookie") #定义蓝图对象
@cookieApp.get("/set")
def set_cookie():
# 【step2】定义:response对象
resp = make_response("设置cookie")
# 【step3】实现具体的cookie操作(设置cookie)
resp.set_cookie(cookieKey, "myFlaskCookie-2022")
# 【step4】返回response对象
return resp
2.运行结果
2.删除cookie
1.具体代码实现
from flask import Blueprint as bp
from flask import make_response # 【step1】导包
cookieKey = "mp-cookie"
cookieApp = bp("cookieApp", __name__, url_prefix="/cookie") #定义蓝图对象
@cookieApp.get("/set")
def set_cookie():
# 【step2】定义:response对象
resp = make_response("设置cookie")
# 【step3】实现具体的cookie操作(设置cookie)
resp.set_cookie(cookieKey, "myFlaskCookie-2022")
# 【step4】返回response对象
return resp
@cookieApp.get("/delete")
def delete_cookie():
# 【step2】定义:response对象
resp = make_response("删除cookie")
# 【step3】实现具体的cookie操作(设置cookie)
resp.delete_cookie(cookieKey)
# 【step4】返回response对象
return resp
if __name__ == '__main__':
pass
2.运行结果
3.Flask操作session
注意 操作session—>前提(已设置)app.secret_key=”指定secret_key”
1.操作流程介绍
2.常用方法
操作项 | 方法 | 备注 |
---|---|---|
设置session | session[‘key’]=’value’ | 对session的操作都需要依赖“flask的session” 导包from flask import session |
获取session | 方式1 session1=session[‘key’] 方式2 session2=session.get(‘key’) |
|
删除session | session.delete(‘key’) | |
清空session | session.clear() |
3.代码实现
#!/usr/bin/env pytho
# -*- coding: utf-8 -*-
"""
@author:cooling
@file:session.py
@time:2022/04/18
"""
from flask import Blueprint as bp
# 【step1】导包
from flask import session, make_response
import time
sessionApp = bp("sessionApp", __name__, url_prefix="/session")
@sessionApp.get("/set")
def set_session():
response = make_response("设置session")
session['name'] = 'mp-session'
# time.sleep(5)
return "return set session"
@sessionApp.get("/get")
def get_session():
session_name = session['name']
print(session_name)
return str("hello:\t" + session_name)
@sessionApp.get("pop")
def pop_session():
session.pop('name')
return "pop-session"
@sessionApp.get("clear")
def clear_session():
session.clear()
return "clear-session"
if __name__ == '__main__':
pass