技术文摘
Flask 最常用的装饰器
2025-01-09 03:03:59 小编
Flask 最常用的装饰器
在 Flask 框架中,装饰器扮演着至关重要的角色,它们极大地简化了代码结构,提升了开发效率。下面我们就来探讨一下 Flask 中最常用的那些装饰器。
@app.route 装饰器
这无疑是 Flask 中使用频率最高的装饰器。它用于将一个函数绑定到一个特定的 URL 上,从而定义了一个路由。通过它,我们可以轻松地告诉 Flask 应用,当用户访问某个 URL 时,应该执行哪个函数。例如:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return "欢迎来到我的 Flask 应用!"
if __name__ == '__main__':
app.run()
在上述代码中,@app.route('/') 将 index 函数与根路径 '/' 绑定,用户访问根路径时就会看到相应的欢迎信息。
@app.before_request 装饰器
@app.before_request 装饰器会在每次请求之前执行被装饰的函数。这在需要进行一些全局预处理时非常有用,比如验证用户登录状态、记录请求日志等。
@app.before_request
def before_request():
print("在每个请求之前执行")
这样,每次有请求进入应用时,都会先打印出这条信息。
@app.after_request 装饰器
与 @app.before_request 相反,@app.after_request 装饰器会在每次请求处理之后执行,前提是请求没有发生错误。这个装饰器常用于对响应进行一些额外处理,例如添加响应头。
@app.after_request
def after_request(response):
response.headers['X-Custom-Header'] = 'Flask 示例'
return response
通过上述代码,每个响应中都会添加一个自定义的头部信息。
@app.errorhandler 装饰器
当应用出现错误时,@app.errorhandler 装饰器可以捕获错误并返回自定义的错误页面。我们可以指定要处理的错误代码,例如 404 或 500 等。
@app.errorhandler(404)
def page_not_found(e):
return "页面未找到", 404
这样,当用户访问不存在的页面时,就会看到我们自定义的错误提示。
这些 Flask 常用装饰器为开发者提供了强大的功能,通过合理运用它们,能够更高效地构建出功能丰富、结构清晰的 Web 应用程序。
- 20 个 JavaScript 效率提升缩写技巧
- 甲骨文推出 Visual Studio Code 的 Java 扩展插件 涵盖全开发周期
- 确定 Apache Kafka 大小与规模的方法
- WebClient 与 RestTemplate 差异全解析
- Hutool 封装代码:一次解决 webservice 调用难题
- 探究 Go 里的 new() 与 make() 函数
- Java21 虚拟线程新特性
- 在 Go 中借助 sync.Map 打造线程安全的缓存
- 命令模式:请求的对象式封装
- 完美适配图片:精通 CSS 的 Object-Fit 与 Object-Position
- 谈谈消息中间件 MQ
- 单体架构向微服务架构迁移:挑战与最佳实践
- Redis 中万能的 String 为何不再好用?
- 阿里二面:消息队列的事务消息能否以 TCC 模式实现?
- IntelliJ IDEA 2023.2 正式推出 新 UI 与 Profiler 转正