【问题标题】:Django Authentication credentials were not provided未提供 Django 身份验证凭据
【发布时间】:2019-07-29 02:14:35
【问题描述】:

所以我使用 Http 文件使用 rest_framework 身份验证发出 GET 请求

这是我使用的命令:

GET localhost:8000/api-admin/products
Authorization: Token 5e2cf6ddc7a0ff8fe03e4749d788a423f6640443

当我使用浏览器并转到该链接时,它可以成功运行,但是当我使用 HTTP 文件或 Postman 时,我收到 Authentication credentials were not provided. 错误

我还在设置文件中添加了代码

REST_FRAMEWORK = {
    'DEFAULT_AUTHENTICATION_CLASSES': (
        'rest_framework.authentication.TokenAuthentication',
        'rest_framework.authentication.SessionAuthentication',
    )
}

【问题讨论】:

  • 你添加了'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework.authentication.TokenAuthentication', in settings.py REST_FRAMEWORK
  • @NimishBansal 是的,我添加了它
  • 可能是您忘记勾选邮递员标题列表中的复选框
  • @bkawan 已检查
  • 如果您可以分享您正在做什么和如何做的屏幕,那就太好了。由于我已经对其进行了测试并且工作正常。

标签: django django-rest-framework


【解决方案1】:

错误是我忘记在authentication_classes 中添加TokenAuthentication

authentication_classes = (SessionAuthentication, BasicAuthentication, TokenAuthentication)

在 API 文件中

【讨论】:

    【解决方案2】:

    我认为您必须在 URL 末尾添加一个尾随 /。

    【讨论】:

      猜你喜欢
      • 2019-06-11
      • 2019-05-25
      • 2017-11-22
      • 2015-05-16
      • 2019-04-29
      • 2015-01-10
      • 1970-01-01
      • 1970-01-01
      • 2015-02-05
      相关资源
      最近更新 更多