Django Rest Framework:未提供身份验证凭据

Nou*_*eau 0 django django-rest-framework

当前数据库中的图像只有一个数据。

但是,我目前遇到以下错误

"GET /images/all/ HTTP/1.1" 401 58" "detail": "Authentication credentials were not provided."

我的 Git 中心网址:https : //github.com/Nomadcoders-Study/Nomadgram

设置的哪一部分出错了?

Rez*_*adi 7

我看到了你的 Github 项目 settings.py 文件。

此错误是因为您对 Rest API 的所有请求都使用 IsAuthenticated 后端。您还设置了 jwt 授权系统:

REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
    'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
    'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
),
}
Run Code Online (Sandbox Code Playgroud)

所以基本上,如果您想创建对任何 API 端点的请求,您应该在其中提供 jwt 令牌授权标头。像这样:

curl "<your api endpoint>" -H "Authorization: jwt <token_received>"
Run Code Online (Sandbox Code Playgroud)

还要记住通过在序列化程序中提供用户名和密码来设置和 API 以从中接收令牌。