drf框架为我们提供了基本的权限验证。主要包括三种验证
-
AllowAny 所有用户
-
IsAuthenticated 验证过的用户
-
IsAdminUser 超级管理员
但是在项目中使用的时候不一定满足需求,这时候想要扩充权限就要继承BasePermission
#定义新的权限
class VIP(BasePermission):
message = "必须是VIP才能访问"
def has_permission(self, request, view):
if request.user.id != 1:
return False
return True
使用扩充权限
class Hello(APIView):
permission_classes = [VIP] # 可以增加多个权限