2017-01-12 49 views
0

Django動作しません:私はPOSTMANを経由して、このURLにPOSTリクエストを送信すると1.9.7/3.5.1 PythonDjangoは:csrf_exemptは

views.py

from django.views.decorators.csrf import csrf_exempt 
from django.http import JsonResponse 

class OrderPayCheckView(View): 

    @csrf_exempt 
    def post(self, request, *args, **kwargs): 
     return JsonResponse(
      data={ 
       "valid": False, 
      } 
     ) 

が、それは示して、 403 Forbidden - CSRF authentication Failちょっとしたこと(すべてのエラーを表示したいが、言語は韓国語です)

私はそれ自身のURLを持っている私のテストサーバーでそれをテストしました。

どうしてですか?

答えて

1

ビューの前にデコレータを置くと正しく動作します。

from django.views.decorators.csrf import csrf_exempt 
from django.http import JsonResponse 

@csrf_exempt 
class OrderPayCheckView(View): 
    def post(self, request, *args, **kwargs): 
     return JsonResponse(
      data={ 
       "valid": False, 
      } 
     ) 
+1

ありがとうございました。私はdjangoでビューを使用しない場合はどうすれば? – Dejell

+1

@Dejellたとえば '( '^ my_page/$'、csrf_exempt(direct_to_template)、{'テンプレート': 'my_page.html'})' – Jinje