Corsheaders: пытаюсь подключить свой django api к проекту react, нужна помощь

Я пытаюсь подключить django Rest API к проекту react, API развернут на heroku и вроде бы работает как надо, но при попытке зарегистрироваться в проекте react я получаю в консоли следующее сообщение об ошибке:

Доступ к XMLHttpRequest по адресу 'https://productive-you-api-d9afbaf8a80b.herokuapp.com/dj-rest-auth/registration/' из origin 'https://3000-leighallend-productivey-5rpfnq7ldhc.ws.codeinstitute-ide.net' был заблокирован политикой CORS: Поле заголовка запроса content-tye не разрешено Access-Control-Allow-Headers в префлайт-ответе.

Мой раздел cors в файле settings.py api выглядит следующим образом:

CORS_ALLOWED_ORIGINS = []
CORS_ALLOWED_ORIGIN_REGEXES = [
    r"^https://.*\.gitpod\.io$",
    r".codeinstitute-ide.net$",
]

if 'CLIENT_ORIGIN' in os.environ:
    CORS_ALLOWED_ORIGINS = [
        os.environ.get('CLIENT_ORIGIN')
    ]
else:
    CORS_ALLOWED_ORIGINS.extend([
        'https://3000-leighallend-productivey-5rpfnq7ldhc.ws.codeinstitute-ide.net',
        'https://productive-you-api-d9afbaf8a80b.herokuapp.com',
    ])

CORS_ALLOW_CREDENTIALS = True

CORS_ALLOW_HEADERS = list(default_headers) + [
    'Content-Type',
]

Я понятия не имею, что все это значит

Я попытался подключить свой api к проекту react, как это было сделано в учебнике для моего курса в Code Institute, я ожидал, что смогу создать пользователя, но мои корсхедеры вызывают проблемы.

В сообщении об ошибке указано, что вы задали имя заголовка как content-tye. Этот заголовок не включен в Access-Control-Allow-Headers. Первый запрос на префлайт отправляется на ваш бэкенд, который отвечает разрешенными заголовками. Поскольку заголовка вашего запроса нет в этом списке, возникает ошибка.

Похоже, в коде React допущена опечатка. Измените content-tye на content-type.

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