Наличие API POST'able и промежуточного программного обеспечения Django CSRF

У меня есть веб-приложение Django, которое имеет и фронтенд, доступный для сети компонент и API, к которому получает доступ настольный клиент. Однако теперь с новым компонентом промежуточного программного обеспечения CSRF, запросы API от настольного клиента, которые являются POST'ed, получают 403.

Я понимаю, почему это происходит, но что надлежащий путь состоит в том, чтобы зафиксировать это, не ставя под угрозу безопасность? Есть ли некоторым образом, я могу предупредить в HTTP-заголовке, что это - запрос API и что Django не должен проверять на CSRF, или это - плохая стратегия?

Править--

Метод, который я использую в данный момент, - то, что настольный клиент устанавливает заголовок, X-Requested-With: XMLHttpRequest. Это - вид hacky, но я не уверен, как это было бы обработано лучше.

32
задан T. Stone 8 March 2010 в 23:19
поделиться

1 ответ

Как насчет того, чтобы просто отделить представление(я) для вашего настольного клиента и украсить их csrf_exempt?

10
ответ дан 27 November 2019 в 21:16
поделиться
Другие вопросы по тегам:

Похожие вопросы: