django session登录装饰器

Posted yrash

tags:

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

def login_check(func):
    @wraps(func)
    def inner(request,*args,**kwargs):

        # ret = request.get_signed_cookie(‘is_login‘,default=0,salt=‘dsd‘,max_age=10)
        ret = request.session.get("is_login")
        if ret == 1:
            return func(request,*args,**kwargs)
        else:
            #获取当前访问页面
            next_url = request.path_info
            print(+++++++,next_url)
            return redirect(/app02/login/?next=.format(next_url))
    return inner
@login_check
def index(request):
    return render(request, app02/index.html)
def logout(request):
    # rep = redirect(‘app02/login/‘)
    # rep.delete_cookie("is_login")
    #删除session
    request.session.flush()
    return redirect(/app02/login/)

 

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

Django装饰器验证登录

Django 之装饰器实现登录认证

CSIC_716_20200113Django入门---forms组件session和cookie登录认证装饰器

Django之session验证的三种姿势

Django之session验证的三种姿势

Django-7