Django Rest Framework: учетные данные для аутентификации не предоставлены - PullRequest
0 голосов
/ 28 ноября 2018

Изображения в текущей базе данных содержат один фрагмент данных.

Но в настоящее время у меня возникает следующая ошибка

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

My Git Hub URL: https://github.com/Nomadcoders-Study/Nomadgram

Какая часть установки прошла неправильно?

Ответы [ 3 ]

0 голосов
/ 28 ноября 2018

Вы можете добавить его в свой проект. Настройки rest_framework конфигурации

settings.py

REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES'('rest_framework.authentication.BasicAuthentication', ), }

0 голосов
/ 29 ноября 2018

попробуйте это в вашем файле настроек

settings.py

REST_FRAMEWORK = {
    'DEFAULT_PERMISSION_CLASSES': ('rest_framework.permissions.IsAuthenticated',),
    'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework_simplejwt.authentication.JWTAuthentication',),


}
0 голосов
/ 28 ноября 2018

Я видел ваш файл Github проекта settings.py.

Эта ошибка вызвана тем, что вы используете бэкэнд IsAuthenticated для всех ваших запросов к API отдыха.Также вы настраиваете систему авторизации jwt:

REST_FRAMEWORK = {
'DEFAULT_PERMISSION_CLASSES': (
    'rest_framework.permissions.IsAuthenticated',
),
'DEFAULT_AUTHENTICATION_CLASSES': (
    'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
),
}

Таким образом, если вы хотите создать запрос к любой из ваших конечных точек API, вы должны предоставить в ней заголовок авторизации токена jwt.как это для:

curl "<your api endpoint>" -H "Authorization: jwt <token_received>"

Также не забудьте настроить и API для получения токена от него, предоставив имя пользователя и пароль в сериализаторе.

...