Все все ипы в CSRF_TRUSTED_ORIGIN django

Как разрешить все/любые ip в CSRF_TRUSTED_ORIGIN в django Backend django restapi запущен, а frontend находится на angular в одной системе, и мы пытаемся получить доступ с системного ip в другой системе, я могу получить доступ к frontend, но при доступе к backend POST метод API не работает, он показывает not found in card trusted origins. В settings.py я сделал get dynamic ips.

import socket
def get_ipaddress(): 
    
   host_name = socket.gethostname()
   ip_address = socket.gethostbyname(host_name) 
   return "http://"+ip_address+":4200"

ALLOWED_HOSTS=["*"]
CSRF_TRUSTED_ORIGINS=[get_ipaddress()]

Попробовал использовать csrf_excempt, но он не работает. Версия django4.0.1, Angular 16

Для CSRF вам нужно только внести в белый список/разрешить IP сервера, на котором размещено ваше приложение angular. Во время работы ангулярного приложения вы должны внести в белый список url, по которому вы обращаетесь к вашему ангулярному приложению в браузере. например: http://192.168.1.1:4200. или https://whateveryourwebappurlis.com.

Это URL, который вы используете для загрузки приложения в браузере. Вам необходимо внести его в белый список.

CSRF_TRUSTED_ORIGINS=["http://localhost:4200", "https://whateveryourwebappis.com"]

Убедитесь, что вы передаете это в заголовке origin вашего запроса к django app.

Читайте больше на: https://docs.djangoproject.com/en/4.0/ref/settings/#csrf-trusted-origins

socket.gethostbyname(host_name.local)

При использовании приведенной выше строки в get_ipaddress, все заработало

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