flask 钩子函数
什么是钩子(中间件Middleware)
钩子或叫钩子函数,是指在执行函数和目标函数之间挂载的函数,框架开发者给调用方提供一个point-挂载点, 一种AOP切面编程思想.
常用的钩子函数
before_first_request: 处理第一次请求之前执行
before_request: 在每次请求之前执行,通常使用这个钩子函数预处理一些变量,实现反爬等
after_request: 注册一个函数,如果没有未处理的异常抛出,在每次请求之后运行.
teardown_appcontext: 当APP上下文被移除之后执行的函数,可以进行数据库的提交或者回滚
使用缓存设置一个简单反把案例 :
1 2 3 4 5 6 7 8 9 10 | #针对TP做反爬(简单) ip = request.remote addr # cache.get() # cache.set() // 设置缓存 if cache.get(ip): #做了拦截,不会进入视图函数 return '小伙子,别爬了!" else : #对每个IP设置一个缓存,1秒内不让复访问 cache. set (ip, 'value' ,timeout = 1 ) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?