Получение ошибки: 'No 'Access-Control-Allow-Origin' header is present on the requested resource.' for logout route in Django/React app

У меня есть приложение, использующее React/Django, с Auth0 для аутентификации. Я следовал этому руководству , чтобы исправить все ошибки CORS, и все мои маршруты не сталкиваются с проблемами, за исключением маршрута выхода из системы.

Я создаю кнопку выхода из системы, которая будет стирать сессию пользователя на Django и перенаправлять на страницу выхода из Auth0.

urls.py

urlpatterns = [
   ...
   path('logout/, views.logout, name = 'logout')
]

views.py

from django.contrib.auth import logout as django_logout
def logout(request):
   django_logout(request)
   domain = settings.AUTH0_DOMAIN
   client_id = settings.AUTH0_CLIENT_ID
   return_to = '127.0.0.1:8000'
   return redirect(f'https://{domain}/v2/logout?client_id={client_id}&returnTo={returnTo}')

App.jsx


const App = () => {
   ...
   const logout = async () => {
      await fetch('http://127.0.0.1:8000/logout/')
   }
   
   return (
      <div>
         ...
         <button onClick={logout}>Logout</button>
      <div>
   )
}

Когда пользователь выходит из системы, я получаю ошибку CORS, несмотря на импорт и настройку django-cors-headers и отсутствие этой ошибки для любого другого маршрута. В частности, ошибка выглядит так: No 'Access-Control-Allow-Origin' header is present on the requested resource.

ресурс, на который вы ссылались, использовал эти значения в файле settings.py

ALLOWED_HOSTS=['*']
CORS_ORIGIN_ALLOW_ALL = True
# or
ALLOWED_HOSTS=['http://localhost:5000']
CORS_ORIGIN_ALLOW_ALL = False
CORS_ORIGIN_WHITELIST = ('http://localhost:5000')

попробуйте использовать эти значения вместо них (и указать их правильно!)

CORS_ALLOWED_ORIGINS = [...]
CORS_ALLOWED_ORIGIN_REGEXES = ...
CORS_ALLOW_ALL_ORIGINS = False
Вернуться на верх