4.

Forbidden (403) CSRF verification failed. Request aborted.

編集
この記事の要点
  • Django の Forbidden (403) CSRF verification failed
  • 原因: テンプレート側の form に {% csrf_token %} が無い
  • 対処:
    {% csrf_token %} ... を必ず記述
  • Ajax の場合は X-CSRFToken ヘッダで送信

 

エラー内容

Forbidden (403)

CSRF verification failed. Request aborted.

 

発生条件/原因/対処法

formでPOST通信した際に発生するエラー。

テンプレート側のformタグ内に csrf_token を設定していないことが原因。

    {% csrf_token %}

編集
Post Share
子ページ

子ページはありません

同階層のページ
  1. Invalid HTTP_HOST header: '...'. You may need to add '...' to ALLOWED_HOSTS
  2. CommandError: You must set settings.ALLOWED_HOSTS if DEBUG is False.
  3. django.utils.datastructures.MultiValueDictKeyError
  4. Forbidden (403) CSRF verification failed. Request aborted.
  5. ModuleNotFoundError: No module named 'MySQLdb'
  6. WARNINGS: ?: (mysql.W002) MySQL Strict Mode is not set for database connection
  7. Unknown column 'table_name.id' in 'field list'
  8. RuntimeError: Model class ~ doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
  9. get() returned more than one MynumberRegist -- it returned 2!
  10. django.db.utils.OperationalError: (2006, "Can't connect to MySQL server")
  11. 'include' is not defined