CORS не работает в Django, но настройки кажутся правильнымиPython

Программы на Python
Ответить
Anonymous
 CORS не работает в Django, но настройки кажутся правильными

Сообщение Anonymous »


Я пытаюсь выполнить POST-вызов к Django из веб-интерфейса React Native на разных поддоменах.

Я думал, что настроил CORS правильно, но это не так.

Вот как выглядит мой файл settings.py Django:

CORS_ALLOW_CREDENTIALS = Истина CORS_ALLOW_HEADERS = ['*'] CORS_ALLOWED_ORIGINS = ['https://api.example.com', 'https://example.com', 'https://www.example.com' ] CSRF_TRUSTED_ORIGINS = [ «https://api.example.com», «https://example.com», «https://www.example.com» ] ALLOWED_HOSTS = ["0.0.0.0", "api.example.com", "example.com"] ПРОМЕЖУТОЧНОЕ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ = [ 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware', 'django.contrib.flatpages.middleware.FlatpageFallbackMiddleware', ] INSTALLED_APPS = [ ... 'корсхедеры', ... ] Что именно я здесь делаю не так? Я получаю следующую ошибку:

Доступ к XMLHttpRequest по адресу «https://api.example.com/api/v1/pagescreate/» из источника «https://example.com» заблокирован политикой CORS: нет «Access- Заголовок Control-Allow-Origin присутствует в запрошенном ресурсе. А это мой взгляд на Django:

класс PageCreateView(generics.CreateAPIView): набор запросов = Page.objects.all() сериализатор_класс = сериализатор страницы Что может быть причиной этого? Мне не хватает каких-то настроек в React? Я использую axios для выполнения вызовов, при этом единственным заголовком является "Content-Type": "application/json"

РЕДАКТИРОВАТЬ: Может ли это быть связано с каким-то правилом nginx на моем сервере? Или, может быть, моя конфигурация Kubernetes? Я использую Docker для настройки контейнера и могу легко связать файл Dockerfile или любую информацию из моих настроек Kubernetes
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»