zoukankan      html  css  js  c++  java
  • Django web : CSRF verification failed. Request aborted.

    错误标题: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',

  • 相关阅读:
    Leetcode Palindrome Linked List
    Leetcode Delete Node in a Linked List
    Leetcode Ugly Number
    Python 列表解析
    Python 生成器以及应用
    Python 迭代器协议以及可迭代对象、迭代器对象
    Python 装饰器
    Python 函数的嵌套
    Python 闭包函数
    Python 名称空间与作用域
  • 原文地址:https://www.cnblogs.com/lhj588/p/2234151.html
Copyright © 2011-2022 走看看