Аутентификация Django JWT не загружает все защищенные URL-адреса

Когда я вхожу в систему, используя свой API в swagger, и заполняю информацию во всплывающей кнопке Авторизация, мой защищенный список API по-прежнему не отображается.

Я попытался добавить его как «токен на предъявителя», но это не сработало.

Ниже приведен мой код:

SWAGGER_SETTINGS = {
 'LOGIN_URL': 'api:login',
 'LOGOUT_URL': 'api:logout',
 'USE_SESSION_AUTH': False,
 'DOC_EXPANSION': 'list',
 'APIS_SORTER': 'alpha',
 'SECURITY_DEFINITIONS': {
     'api_key': {
         'type': 'apiKey',
         'in': 'header',
         'name': 'Authorization',
         "description": "JWT authorization"
     }
 },
}


'DEFAULT_AUTHENTICATION_CLASSES': [
    'rest_framework_jwt.authentication.JSONWebTokenAuthentication',
],

# Permission settings
'DEFAULT_PERMISSION_CLASSES': [
    'rest_framework.permissions.IsAuthenticated',
],

Я использую django-rest-swagger==2.2.0. Работает в чванстве 2.1.2


person Sandhu    schedule 12.07.2019    source источник


Ответы (1)


Я столкнулся с аналогичной проблемой, Django swagger, которая не будет работать для защищенных (аутентифицированных токеном) API, вместо этого используйте drf-yasf с той же конфигурацией, следуйте инструкциям ниже

https://github.com/axnsan12/drf-yasg
person Ankush Sahu    schedule 23.08.2019