django - BasicAuthentication 在检查权限时不对用户进行身份验证
问题描述
我想使用 DRF 使用rest_framework.authentication.BasicAuthentication
开发服务器开发我的 SPA,同时使用来自本地运行的后端的数据。
我包括rest_framework.authentication.BasicAuthentication
在settings.py
. 我有一个需要权限(guardian.mixins.PermissionRequiredMixin
)的视图:
class WidgetDetail(PermissionRequiredMixin, RetrieveAPIView):
serializer_class = WidgetSerializer
permission_required = "widget.view_widget"
return_403 = True
如果我尝试GET
使用基本身份验证的小部件,视图返回错误 403。使用调试器,我可以看到PermissionRequiredMixin.check_permissions()
运行时是 AnonymousUser,而不是DRF 文档所指示request.user
的基本身份验证提供的用户。
为什么在检查权限时无法识别基本身份验证提供的用户?
解决方案
推荐阅读
- r - R如何将两个data.frames彼此相邻,用NA填充不相等的行
- r - 聚合函数丢弃值,程序 R
- angular - 从最后一个斜杠中减去 string='aaaa/bbb/ccc/dd' 以获得 'dd'
- javascript - 循环 json 数据
- perl - 本地主机的 AnyEvent tcp 服务器-客户端示例在不使用 TLS 时挂起
- reactjs - AWS JS SDK:如何使用根 IAM 账户从子账户/另一个角色访问 GameLift 数据?
- dataframe - 如何在 pyspark 数据框中将几何列从二进制格式转换为字符串格式?
- javascript - 向页面添加新元素
- android - 为 x86 构建具有 ARM 兼容性的 Android 11
- mongodb - 如何在 MongoDB 聚合中对数组内的字段进行排序