cookie 和 session
cookie存储在本地
session是在服务器端进行用户信息的保存,一个字典
Cookie:
# 1. 设置 : 通过response对象设置
response = redirect(xxx)
response = render_template(xxx)
response = Response(xxx)
response = make_response(xxx)
response = jsonify(xxx)
# 通过对象调用方法
response.set_cookie(key, str(value), max_age=1800)
# 2. 获取: 通过request对象获取
request.form.get()
request.args.get()
# cookie也在request对象中
request.cookies.get(key) --->value
# 3. 删除: 通过response对象删除,把浏览器中的key=value删除了
response = redirect(xxx)
response = render_template(xxx)
response = Response(xxx)
response = make_response(xxx)
response = jsonify(xxx)
response = redirect(url_for("user.index"))
# 通过对象的调用方法
response.delete_cookie("uid")
(1). 登录后设置cookie
(2). 首页验证cookie
(3). 退出登录 删除cookie
Session:
# 1. 使用session必须要设置配置文件(settings.py),在配置文件中添加SECRET_KEY=随机字符串
SECRET_KEY = "HAJSDLASDNADALK"
# 2. 设置: 如果要使用session,需要直接导入:
from flask import session
session[key]=value
'''
把session当成字典使用,因此: session[key]=value
就会将key=value保存到session的内存空间
并会在响应的时候自动在response中自动添加有一个cookie; session=加密后的id
'''
# 3. 获取
value = session.get(key]
'''
用户请求页面的时候就会携带上次保存在客户端浏览器的cookie值,其中包含session=加密后的id
获取session值的话通过session直接获取,因为session是一个字典,就可以采用字典的方式获取即可
value = session[key] 或者 value = session.get(key]
'''
# 4. 删除
session.clear() # (推荐)删除session的内存空间和删除cookie
del session[key] #只会删除session中的这个键值对,不会删除session空间和cookie
(1). settings.py 配置session随机字符串
(2). 登录后设置cookie
(3). 首页验证cookie
(4). 退出登录 删除cookie