【问题标题】:Django-rest-framework permissionsDjango-rest-framework 权限
【发布时间】:2017-05-04 17:13:34
【问题描述】:

我有用户列表

from rest_framework import permissions

class UserList(generics.ListCreateAPIView):
    queryset = User.objects.all()
    serializer_class = UserSerializer
    permission_classes = (permissions.IsAuthenticated,)

如您所见,我只需要访问经过身份验证的用户,但我始终拥有所有权限。有什么想法吗?

【问题讨论】:

  • 你的问题不清楚。 1、你确定调用这个视图时没有以管理员身份登录吗?如果您登录到管理员,DRF 将自动对您进行身份验证。 2. 您想要拥有此权限的用户列表吗?
  • @DruhinBala 1. 我确定 2. 不,我只想调用此视图经过身份验证的用户。我找到了一些解决方案here
  • 代码看起来不错。你确定你没有登录吗?您确实尝试过其他浏览器或隐身模式,对吧?

标签: django permissions django-rest-framework


【解决方案1】:

代码看起来不错。您可以尝试以下几种方法:

  1. 正如@Druhin 所提到的,确保您已在新的隐身窗口中尝试了请求,以确保您没有 cookie 或其他对您进行身份验证的东西。
  2. 确保您访问的是正确的 URL。您确定没有其他视图映射到该特定网址吗?
  3. 作为更可靠的方法,使用 CURL 发送请求。
  4. 这不是你的问题,但你也可以为其余框架配置默认权限。

例如在settings.py中:

 REST_FRAMEWORK = {
      'DEFAULT_PERMISSION_CLASSES': (
        'rest_framework.permissions.IsAuthenticated',
     )
 }

如果这些选项都没有有效,请发布您的设置和任何其他相关代码。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-31
    • 2016-06-17
    • 1970-01-01
    • 2018-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多