Python Flask装饰器登录验证

Posted Pythia丶陌乐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python Flask装饰器登录验证相关的知识,希望对你有一定的参考价值。

from flask import Flask,render_template,redirect,request,session

app = Flask(__name__)

app.secret_key = "sdfasdfasdf3fsdf"

@app.route(/)
def hello_world():
    return Hello World!

def wapper(func):
    def inner(*args,**kwargs):
        if not session.get(user_info):
            return redirect(/login)
        return func(*args,**kwargs)
    return inner


@app.route(/login,methods=[GET,POST])
def login():
    if request.method == "GET":
        return render_template(login.html)
    else:
        user = request.form.get(username)
        pwd = request.form.get(password)
        if user == alex and pwd == 123:
            session[user_info] = user
            return redirect(/index)
        else:
            return render_template(login.html,msg=用户或密码错误)

@app.route(/index,methods=[GET])
@wapper
def index():
    return render_template(index.html)


@app.route(/query,methods=[GET])
def query():
    if not session.get(user_info):
        return redirect(/login)
    return query

@app.route(/student,methods=[GET])
@wapper
def student():
    return student



if __name__ == __main__:
    app.run()

 

以上是关于Python Flask装饰器登录验证的主要内容,如果未能解决你的问题,请参考以下文章

flask中的登录验证 装饰器版 befor_request版

python 装饰器在Flask中验证发布请求

Flask10 登录模块表单框架表单渲染表单验证bookie请求之前钩子g对象编写装饰器

如何在 Flask 中实现登录所需的装饰器

Python Flask 装饰器和 Apache mod_wsgi

python登录加随机验证码校验程序(装饰器内置函数的理解)