すべてのブラウザでCSRFトークンが無効なエラーである理由をデバッグするにはどうすればよいですか?機能テストで同じフォームをテストすると機能しますか?
質問する
3923 次
4 に答える
2
フォームが入力をレンダリングする方法をカスタマイズした場合は、次の例のように {{form_rest(form)}}を追加したかどうかを確認してください。
例
<form action="{{ path('BloggerBlogBundle_contact') }}" method="post" {{ form_enctype(form) }}>
{{ form_errors(form) }}
{{ form_row(form.name) }}
{{ form_row(form.email) }}
{{ form_row(form.subject) }}
{{ form_row(form.body) }}
{{ form_rest(form) }}
<input type="submit" value="Submit" />
</form>
于 2012-05-19T11:50:39.057 に答える
2
config.ymlに以下のようにコメントすると、すべてが機能し始めましたか?したがって、新しい質問は次のとおりです。この構成のコメント部分の何が問題になっていますか?
session:
auto_start: true
# cookie_lifetime: 86400
# cookie_path: \
# cookie_domain: example.com
# cookie_secure: true
# cookie_httponly: true
于 2012-05-22T06:32:53.360 に答える
2
私にとって、セキュアクッキーを無効にすると、symfony 2.0.16から2.1.6にアップグレードした後、この問題が解決しました。
session:
cookie_lifetime: 3600
cookie_path: \
cookie_domain: .%base_domain%
cookie_secure: false
cookie_httponly: true
于 2013-01-24T11:07:35.533 に答える
-5
@csrf_exemptデコレータを使用して、インポートする必要があるこのためのcsrfトークンを除外できます。
django.views.decorators.csrfからインポートcsrf_exempt
次に、ビューの前に@csrf_exemptと書き込みます
これは正しく動作します:)
于 2013-01-18T08:03:45.940 に答える