2017-03-21 3 views
0

ビューは、crsftokenを除いて永遠に完全にキャッシュされる可能性があります。これは明らかにキャッシュされるべきではありません。それだけでキャッシュを無効にすることは可能ですか、これを実装する一般的な方法はありますか?キャッシングとcrsftoken

+0

この

私はこのような何かを探して、それを想像しますhttp:// stackoverflowを参考にしてください。 com/questions/27308899/django-caching-causes-csrf-violations –

答えて

1

まず、Djangoのキャッシングミドルウェアを使用していますか? Djangoは独自にそれを処理することができるように、ドキュメントごとに、それが見えます:https://docs.djangoproject.com/en/1.10/ref/csrf/#caching

それはあなたの設定で動作しない場合:

あなたはAjaxを経由してCSRFトークンをロードすることによってこの問題を解決することができるかもしれませんフォーム提出時に。

some_template.html:

{% csrf_token %} 

がyour_form.html:

<form id="myForm"> 
    // form stuff 
    <input type="submit" id="submit" value="Submit"> 
</form> 

some_javascript.js

// jQuery trigger warning 
$('#submit').on('click', function(e) { 
    e.preventDefault(); 

    $('#myForm').load('some_template.html'); 
    // unbind and submit 
}); 
+0

私はビューごとのキャッシングを使用していますが、参照でもこれをカバーしています。 – R3turnz

関連する問題