1. 程式人生 > >在使用django 的過程中難免的會使用到format表單進行提交,如果出現“CSRF驗證失敗. 相應中斷”.該如何解決呢?

在使用django 的過程中難免的會使用到format表單進行提交,如果出現“CSRF驗證失敗. 相應中斷”.該如何解決呢?

CSRF驗證失敗. 相應中斷.

1).首先,我們可以先看一下出現問題的所在的原因。

  • Your browser is accepting cookies.
  • The view function passes a request to the template's render method.
  • In the template, there is a {% csrf_token %} template tag inside each POST form that targets an internal URL.
  • If you are not using CsrfViewMiddleware, then you must use csrf_protect
     on any views that use the csrf_token template tag, as well as those that accept the POST data.
2),不難發現,我們是在上面的問題中有一個{% csrf_token %},這是一個網路漏洞,在所有的表單的提交中,都需要新增,而且,必須放在format 後面。 接著,我們應該查詢一下seting 中的MIDDLEWARE_CLASSES 是否缺少了 django.middleware.csrf.CsrfViewMiddleware這也可能是造成出錯的原因。 3).在app 中的views 中可以新增一個from
django.template import
RequestContext,然後,渲染函式render新增即可。例如:return render(req,'df_user/login.html',context_instance=RequestContext(req))。 以上,就是出現問題的三種解決辦法,希望可以幫到你。