flask请给出@app.before_request装饰器的使用案例
时间: 2024-05-12 13:19:39 浏览: 90
浅谈flask中的before_request与after_request
@app.before_request装饰器可以在每个请求之前执行一些操作,例如身份验证或日志记录。下面是一个使用案例:
```
from flask import Flask, request
app = Flask(__name__)
@app.before_request
def authenticate():
if not request.headers.get('Authorization'):
return 'Unauthorized', 401
@app.route('/')
def home():
return 'Hello, World!'
```
在上面的示例中,我们定义了一个名为authenticate的函数,并使用@app.before_request装饰器将其应用于每个请求。该函数检查请求头中是否包含Authorization字段,如果不存在则返回401未授权状态码。如果存在,则请求将继续执行,并返回Hello, World!字符串。
这个例子展示了如何使用@app.before_request装饰器进行身份验证。您可以使用类似的方法来执行其他操作,例如记录请求日志或设置请求上下文。
阅读全文