我正在尝试使用 django rest framework isauthenticated 权限和 TokenAuthentication API 方法来验证我的 Web API 方法:
@api_view(['Post'])
@permission_classes((IsAuthenticated,))
def listofgroups(request):
try:
logout(request)
data = request.data
page_size = data.get('pagesize')
page_number = data.get('pagenumber')
group_qs = Group.objects.all()
paginator = Paginator(group_qs, int(page_size))
group_list = paginator.page(int(page_number))
#group_list = tools.paginate_query_set(group_qs, 1, 3)
#list = group_list[0]['model']
groups = [get_group_dto(g) for g in group_list]
sorted_groups = sorted(groups, key=lambda k: k['user_count'], reverse = True)
group_list_dto = {
"grps": sorted_groups,
"success":1,
"fail":0
}
return Response(group_list_dto)
except Exception as e:
#.error("Error %s"(e), exc_info = 1)
return Response({"success" : 0, "error": str(e)})
基本上我应该总是在标题中设置授权,如:
"授权":"令牌 a26171d30745cc94bcd6ac42d9bc94e1d3992948"
此令牌基于 rest_framework.authtoken
错误是我可以在响应 200 中获取数据,甚至无需在标头中设置令牌,因为它返回的匿名用户是从 django 的后端进行身份验证的。
如何防止匿名用户通过身份验证并使用 django rest 框架为他们返回 403 响应错误
我很感激任何帮助