【Python】Web学习笔记_flask(4)——钩子函数

钩子函数可以用来注册在请求处理的不同阶段执行出

Flask的请求钩子指的是在执行视图函数前后执行的一些函数,

之前是有4种,但是 before_first_request已经被删除了,使用时会报错

before_request:在每次请求前执行,比如校验权限,也可以用来记录用户最后的在线时间

after_request:每次请求后调用,前提是没有未处理的异常抛出

teardown_request:每次请求之后调用,即使有未处理的异常抛出

python 复制代码
from flask import Flask,request,g

app = Flask(__name__)
@app.route('/')
def index():
    print('视图函数执行')
    return 'index page'



#每次请求之前都会执行
@app.before_request
def before_request():
    print('before_request')

#请求后执行
@app.after_request
def after_request(response):
    print('after_request')
    return response

#无论视图函数是否出现异常,每次请求之后都会调用,会接受一个参数,参数是服务器出现的错误信息
@app.teardown_request
def teardown_request(error):
    print('teardown_request:error %s' % error)


if __name__=='__main__':
    app.run(
        debug=True
    )

第一次进入页面

再次进入页面:

相关推荐
Metaphor6923 小时前
使用 Python 给 PDF 设置背景色或背景图
数据库·python·pdf
卷帘依旧3 小时前
JavaScript 判断页面加载完成的多种场景
前端
郝亚军3 小时前
如何让pycharm-2026.1.2顶部菜单栏固定显示在最上端
python
光影少年3 小时前
React 项目常见优化方案
前端·react.js·前端框架
怪兽学LLM3 小时前
LeetCode 438 找到字符串中所有字母异位词(Python 固定滑动窗口+字符计数解法)
python·算法·leetcode
麻雀飞吧3 小时前
期货量化日志别泄露密码:天勤账户凭证脱敏写法
python
爱看老照片3 小时前
浏览器的同源策略以及跨源问题 ( 浏览器的同域策略以及跨域问题)
浏览器·web·同源策略·跨域
CC数学建模3 小时前
2026年江西省研究生数学建模竞赛1题:空间数据分析中的过拟合识别完整思路、代码、模型、文章,全网首发高质量分享!
python·算法·数学建模
matlabgoodboy3 小时前
计算机java程序代写python代码编写c/c++代做qt设计php开发matlab
java·c语言·python