Django & React - Заголовок 'Access-Control-Allow-Origin' в ответе не должен содержать подстановочный символ '*'
Ошибка, которую я получаю в консоли react, выглядит следующим образом
Доступ к XMLHttpRequest на 'http://127.0.0.1/api/analyse' от origin 'http://localhost' был заблокирован политикой CORS: Значение заголовка 'Access-Control-Allow-Origin' в ответе не должно быть подстановочным символом '*', если режим мандатов запроса - 'include'. Режим полномочий запросов, инициированных XMLHttpRequest, контролируется контролируется атрибутом withCredentials.
.
Вот мои настройки Django
ALLOWED_HOSTS = ['localhost', 'http://localhost', '127.0.0.1']
CORS_ALLOWED_ORIGINS = ['http://localhost', 'localhost', 'http://127.0.0.1' ]
CORS_ORIGIN_WHITELIST = ['localhost', 'http://localhost', 'http://127.0.0.1']
CSRF_TRUSTED_ORIGINS = [ 'localhost', 'http://localhost', '127.0.0.1']
INSTALLED_APPS = ['corsheaders',]
MIDDLEWARE = ['corsheaders.middleware.CorsMiddleware',]
В axios.post есть
axios.post("ip_address/api/analyse", formData, {
headers: {
'accept': 'application/json',
'content-type': 'multipart/form-data'
},
Это, похоже, распространенная проблема, и многие другие уже сталкивались с ней, но я не уверен, что сделал неправильно. Кто-нибудь может помочь?
Для других,
Я удалил следующее из кода и, похоже, это работает локально, я проверю на производстве и обновлю этот ответ.
axios.defaults.xsrfHeaderName = "X-CSRFTOKEN";
axios.defaults.xsrfCookieName = "csrftoken";
axios.defaults.withCredentials = true