Flask中四个好用的装饰器
Flask是一个强大的web框架,在这篇文章中我们将来总结一下flask中的几个装饰器,这4个常用的装饰器可以增强视图函数的功能和行为.
1.route装饰器
用于将 URL 映射到视图函数,指定 URL 规则和请求方法。这个装饰器是flask中最常用的装饰器之一。
from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'Hello, World!'
2.before_request和after_request装饰器
在请求处理之前或之后执行一些操作,比如设置全局变量、日志记录等。比如说读取整个网站的设置内容,以便在任何页面都能获取到这些信息。
from flask import request @app.before_request def before_request_func(): print('Before Request') @app.after_request def after_request_func(response): print('After Request') return response
3.errorhandler装饰器
用于处理特定状态码的错误,比如404 Not Found等。
@app.errorhandler(404) def page_not_found(e): return 'Page Not Found', 404
4.login_required装饰器
用于限制某些视图函数需要用户登录才能访问。
from flask import g, redirect, url_for def login_required(view): @functools.wraps(view) def wrapped_view(**kwargs): if g.user is None: return redirect(url_for('login')) return view(**kwargs) return wrapped_view
这些装饰器可以根据需求结合使用,来增强 Flask 应用的功能和安全性。