【发布时间】:2021-11-18 18:59:39
【问题描述】:
我在自定义权限函数中尝试 raise PermissionDenied("Anonymous user") 但我写的消息没有显示在 api 响应中。相反,它会显示默认的禁止消息,即您无权执行此操作
我的 sn-p 在这里:
class CustomPermission(BasePermission):
"""
returns permission based on the request method and slug
"""
def has_permission(self, request,view):
slug = request.resolver_match.kwargs["slug"]
if slug is not None and request.method == 'POST':
if slug == "abc":
user = request.user
if user.is_staff:
return True
if user.is_anonymous:
print("iam here")
raise PermissionDenied("Anonymous user")
elif slug == "mnp":
return True
else:
return True
在上面的代码中,我到达了(“iam here”),但匿名用户没有打印,而是显示默认消息。
【问题讨论】:
标签: django api django-rest-framework permissions django-permissions