Django CORS Missing Allow Origin Error даже с промежуточным ПО corsheaders

Здравствуйте, я создаю SPA с Django + Vue.js
. и борюсь с ошибкой CORS Missing Allow Origin.

Это происходит, когда фронтенд Vue.js вызывает некоторый API, а бэкенд Django возвращает перенаправление на внешний URL.

Из бэкенда Django этот API возвращает нечто следующее.

return redirect('https://api.external.service.com/sso/authorize?param1=xxx&param2=yyy>')

Затем фронтенд Vue.js пытается перенаправить на URI, но это не удается.
Поскольку консоль сообщает "CORS Missing Allow Origin",
. Я использую corsheaders со следующей конфигурацией, но это не решает проблему.
Что не так с тем, что я делаю?

settings.py

DJANGO_DEBUG = True
ALLOWED_HOSTS = ('localhost', 'api.external.service.com',)
CORS_ORIGIN_ALLOW_ALL = False
CORS_ORIGIN_WHITELIST = ('https://localhost:8000', 'https://0.0.0.0:8000', 'https://api.external.service.com',)
...
INSTALLED_APPS = [
  ...
  'django_extensions',
  'corsheaders',
  'rest_framework',
  ...
]
MIDDLEWARE = [
  ...
  'django.contrib.sessions.middleware.SessionMiddleware',
  'corsheaders.middleware.CorsMiddleware',
  'django.middleware.common.CommonMiddleware',
  ...
]

Для отладки я попробовал следующее, но это также не удалось с той же ошибкой...

settings.py

DJANGO_DEBUG = True
ALLOWED_HOSTS = ('*',)
CORS_ORIGIN_ALLOW_ALL = True
CORS_ORIGIN_WHITELIST = ('https://localhost:8000', 'https://0.0.0.0:8000', 'https://api.external.service.com',)
...
INSTALLED_APPS = [
  ...
  'django_extensions',
  'corsheaders',
  'rest_framework',
  ...
]
MIDDLEWARE = [
  ...
  'django.contrib.sessions.middleware.SessionMiddleware',
  'corsheaders.middleware.CorsMiddleware',
  'django.middleware.common.CommonMiddleware',
  ...
]

Иначе я неправильно понимаю "CORS", и, возможно, мне следует зарегистрировать домен моего приложения на внешнему сервису, чтобы разрешить доступ к нему из моего приложения?

Вернуться на верх