Flask--登录验证(多个装饰器)
Posted 忘川的彼岸
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask--登录验证(多个装饰器)相关的知识,希望对你有一定的参考价值。
登录验证(多个装饰器)
from flask import Flask,url_for,session,render_template
import functools
app = Flask(__name__)
def auth(func):
@functools.wraps(func)
def inner(*args,**kwargs):
username = session.get('name')
if not username:
return redirect(url_for("login"))
return func(*args,**kwargs)
return inner
@app.route("/index",endpoint="homepage") # 别名
@auth # 登录验证放在下面
def index():
data_dict = DATA_DIC
return render_template("index.html",data_dict=data_dict)
# 由于Flask别名默认为函数名并且重复会导致报错,所以需要加上functools
以上是关于Flask--登录验证(多个装饰器)的主要内容,如果未能解决你的问题,请参考以下文章
装饰器实现flask登录,没登录不让看index页面,多个装饰器装饰一个函数的执行顺序
flask中的登录验证 装饰器版 befor_request版