CSRF verification failed. Request aborted

 

原文来自:http://www.cnblogs.com/lhj588/archive/2011/11/03/2234151.html

错误标题:CSRF verification failed. Request aborted.

错误描述:

Help

Reason given for failure:

    CSRF cookie not set.
    

In general, this can occur when there is a genuine Cross Site Request Forgery, or when Django's CSRF mechanism has not been used correctly. For POST forms, you need to ensure:

    * The view function uses RequestContext for the template, instead of Context.
    * 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.

You're seeing the help section of this page because you have DEBUG = True in your Django settings file. Change that to False, and only the initial error message will be displayed.

You can customize this page using the CSRF_FAILURE_VIEW setting.
 
用火狐的时候出现了禁止(403)。CSRF的验证失败。 请求中止。失败的原因给予帮助:CSRF的饼干未设置。一般而言,这可以发生时,有一个真正的跨站请求伪造,
或当Django的CSRF的机制还没有正确使用。 对于POST表单,您需要确保:*该视图功能使用模板RequestContext的,而不是断章取义。
*在模板中,有1%csrf_token%)(模板网址标记在每个邮局形式的内部目标。*如果您不使用CsrfViewMiddleware,那么你必须使用数据csrf_protect任何意见,
使用csrf_token模板标记,以及那些接受这个职位。您看到此页面的帮助部分,因为你在你的Django调试=真设置文件。 改变这种状况为False,只有最初的错误信息
会被显示。您可以自定义此页面使用CSRF_FAILURE_VIEW设置

解决方案:

 

1、解决方法错误提示里已经给出了。在表单里加上{% csrf_token %}就行了。

2、在Settings里的MIDDLEWARE_CLASSES增加配置:

'django.middleware.csrf.CsrfViewMiddleware',
'django.middleware.csrf.CsrfResponseMiddleware',

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值