当前位置:   article > 正文

权限中间件

permissionmiddleware

权限中间件

实现功能:白名单,正则匹配权限

from django.utils.deprecation import MiddlewareMixin
from django.shortcuts import redirect,HttpResponse
import re


class PermissionMiddleware(MiddlewareMixin):
    def process_request(self,request):
        # 获取当前用户访问的url
        current_path = request.path
        # 用户访问白名单
        white_list = ['/login/','/register/','/index/','/admin/*']
        for item in white_list:
            res = re.search(item,current_path)
            if res:
                return None

        # 先校验当前用户是否登录
        if not request.session.get('username'):
            return redirect('/login')
        # 获取当前用户所有的权限
        permission_list = request.session.get("permission_list")
        if permission_list:
            for permission in permission_list:
                permission = '^%s$'%permission
                res = re.search(permission,current_path)
                if res:
                    return None
        return HttpResponse('没有权限')
权限验证中间件

 

posted @ 2019-04-27 16:17 ChuckXue 阅读( ...) 评论( ...) 编辑 收藏
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/71744
推荐阅读
相关标签
  

闽ICP备14008679号