FLASK学习记录-Flask视图之Cookie&Session
Cookie
Cookie是网站辨别用户身份,进行会话跟踪而存储在用户本地终端上的数据,由用户客户端计算机暂时或永久保存。

from flask import Flask, request, make_response from datetime import datetime app = Flask(__name__) @app.route('/set_cookie') def set_cookie(): resp = make_response("create a cookie") resp.set_cookie("name1", "Anna") resp.set_cookie("name2", "Tom",expires=datetime(2024,3,28,16,30,00)) resp.set_cookie("name3", "Bob", max_age=3600) resp.headers["Set-Cookie"] = "name4=Sam;Max-Age=300" return resp @app.route('/get_cookie/<name>') def get_cookie(name): cookie = request.cookies.get(name) return cookie @app.route('/delete_cookie/<name>') def delete_cookie(name): resp = make_response('delete_cookie success') resp.delete_cookie(name) return resp if __name__ == '__main__': app.run(host='0.0.0.0',port=8000,debug=True)
http://xxx:8000/set_cookie/name1
http://xxx:8000/get_cookie/name3
http://xxx:8000/delete_cookie/name1
验证
Session
session是另一种记录客户状态的机制。区别在于cookie保存在客户端浏览器中,session保存在服务器上。

from flask import Flask, session from datetime import timedelta import os app = Flask(__name__) app.config['SECRET_KEY'] = os.urandom(12) app.config['PERMANENT_SESSION_LIFETIME'] = timedelta(days=10) @app.route('/set_session') def set_session(): session['name'] = 'Jack' session.permanent = True return 'set session' @app.route('/get_session') def get_seesion(): return session.get('name') @app.route('/delete_session') def delete(): session.pop('name') return 'delete success' @app.route('/clear_session') def clear_session(): session.clear return 'clear success' if __name__ == '__main__': app.run(host='0.0.0.0',port=8000,debug=True)
http://xxxx:8000/set_session, http://xxxx:8000/get_session, http://xxxx:8000/delete_session, http://xxxx:8000/clear_session
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?