質問

Windows 7でMod_WSGIを使用してApache2を介してPajamasとDjangoが実行されています。ただし、これらのもののセットアップから問題が発生しているとは思いません。フォーム。私のアプリケーションでピジャマ生成フォームを使用しようとすると、403Sが生成されます(「CSRF検証に失敗した」エラーページ)。

私はこれに何時間も費やして、CSRFとパジャマに関連するここで見つけたすべての答えを読み、CSRFとDjango、Django、Ajaxなどについて多くの外部研究を行いました。この状況で何をすべきかを知っている人は、私は質問の本質を打ち倒したと思います。

どうやって手に入れるでしょうか {% csrf_token %} ピジャマで生成された形に? CSRFトークンが永続的ではないことを理解していることから、それは不可能かもしれません。 .py ファイル、ハードコーディングされたものでいっぱいのフォルダーになります。現在のCSRFトークンをすでにコードしたフォームに統合するのはどうですか?

詳細をお問い合わせください。この問題は、ナビゲートするのが非常に難しいです。パジャマとダジャンゴの統合に関する公開された情報はどれもこれを示していません。そして、DjangoのCSRFを知っているように見える私が見つけた唯一の解決策は、おそらくCSRF保護を無効にするべきだと言います(私は できる やるが、どのような保護をすることができますか?私自身のクッキーシステム?いずれにせよ、CSRF保護を無効にするのはひどい考えですか?)。

ありがとうございました!

役に立ちましたか?

解決

Cookie(HTTPリクエストの一部)からCSRFトークンを取得するには、JavaScriptを作成し、送信時にフォームに追加する必要があります。

出発点については、この答えを見てください: django csrf ajax postリクエストで失敗したチェック

ここで重要なのは、JavaScriptが、フォームが送信されるまでトークンの処理を延期するため、Pyjamasで生成されたファイルと同じくらい永続的になる可能性があることです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top