2013-10-01 3 views
3

저는 (Django로 만든) 내 웹 사이트로 데이터를 보낼 수 있어야하는 Python 프로그램이 있습니다. 이 데이터는 웹 사이트의 특정 부분에서 가져와 표시됩니다. 문제는 장고에 내장 된 CSRF 보호가 POST 요청을 차단한다는 것입니다. 내가 이해하는 바에 따르면, POST 요청이 보내지는 모든 형식에 {% csrf_token}을 추가하면 대개이 문제를 피할 수 있습니다. 내 문제는 폼이 아닌 .cgi 스크립트에 POST 요청을 보내려고한다는 것입니다. 누구나 CSRF 보호 기능을 우회 할 수있는 방법을 알고 있습니까? (이 옵션은 있지만 완전히 제거하지 않는 것이 좋습니다.)외부 POST를 사용하여 Django CSRF 보호 무시를 요청합니다.

+0

[Django CSRF 프레임 워크를 사용할 수 없으며 내 사이트가 깨질 수 있습니다.] (http://stackoverflow.com/questions/1650941/django-csrf-framework-cannot-be-disabled-and-is-breaking- 내 사이트) –

답변

5

특정보기에서 csrf 보호를 피하려면 csrf_exempt 데코레이터를 사용해야합니다.

당신은 클래스 기반의 뷰를 사용하는 경우

+1

링크가 깨졌습니다. – summerbulb

+0

링크뿐 아니라 장고가이 스탭을 관리하는 모든 방법이 있습니다. 새 문서는 https://docs.djangoproject.com/en/1.9/ref/csrf/입니다. 내 원래 게시물과 지금은 4 개의 릴리스가 있음에 유의하십시오. – esauro

0

자세한 내용은 read the docs, 나는 이것을 달성뿐만 아니라 다른 매우 유용이나 mixin을 제공하기 위해 mixin를 사용 django-braces을 권 해드립니다 할 수 있습니다.