CSRF验证失败,但仅适用于IE9

2024-01-27

我已经按照中所述设置了 CSRFDjango 文档 https://docs.djangoproject.com/en/dev/ref/contrib/csrf/(使用 Django 1.3)。它适用于 FF 和 Safari,但在 IE9 上我得到

<div id="summary">
<h1>Forbidden <span>(403)</span></h1>
<p>CSRF verification failed. Request aborted.</p>
</div>

在 Ajax 请求的响应标头中我发现

Set-Cookie  csrftoken=8db3637951243ffb591e6b2d6998ed03; expires=Fri, 14-Sep-2012 08:01:52 GMT; Max-Age=31449600; Path=/

当以普通表单(即不涉及 Ajax)使用它时,它可以在 IE9 中工作。

我在 nginx/1.1.2 后面使用 Django。

我在这里缺少什么提示吗?


如果您的表单位于 iframe 内,可能的原因是 IE 阻止第三方 cookie 的默认策略。你可以

  • 不使用 iframe,
  • 将 iframe 页面置于与主页相同的域下,
  • 使用以下命令禁用该特定表单的 CSRF@csrf_exempt 装饰器 https://docs.djangoproject.com/en/dev/ref/contrib/csrf/#django.views.decorators.csrf.csrf_exempt, or
  • 使用 HTTP 标头告诉浏览器允许第三方 cookie(请参阅Chase Seibert 对这个问题的精彩解释 http://bitkickers.blogspot.com/2011/06/django-csrf-verification-failed-in-ie.html).

姜戈的门票#17157 https://code.djangoproject.com/ticket/17157建议在文档中添加有关此问题的注释。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSRF验证失败,但仅适用于IE9 的相关文章

随机推荐

  • 从回调中返回值

    我以前没有任何 JavaScript 经验 我正在尝试实现以下函数 我希望用它来返回值 lat 和 lng function get address var geocoder new google maps Geocoder geocode
  • 如何测试泛型接口的类型?

    我不确定标题是否有意义 但我希望您能通过一些代码理解我的问题 给出以下发布 订阅框架的代码 type IMessage interface B1794F44 F6EE 4E7B 849A 995F05897E1C end ISubscrib
  • 从纬度/经度获取邮政编码

    我有一个控件 允许用户输入邮政编码或在 iframe 中打开谷歌地图 然后单击地图来选择位置 我目前已经完成了所有工作 iframe 会将点击事件中的纬度 经度发送回父级 我还设置了一个数据库表 其中的纬度 经度字段映射到邮政编码 但是 纬
  • 如何在其派生类中重写列表的切片功能

    我做了一个如下所示的课程 class MyList list def init self lst self list lst 我希望在 MyList 中覆盖切片功能 您需要提供定制 getitem http docs python org
  • 当我运行这个小鼠标钩子应用程序时,为什么我的鼠标出现滞后?

    这是我几年前编写的一个小鼠标钩子应用程序 我只是想知道为什么每当我运行它时它都会使我的鼠标滞后 我记得在某处读过 我必须调用一些方法来手动处理资源或使用 MouseListener 进行处理 每当我拖动时 它都会使我的鼠标滞后any屏幕周围
  • c# 使用excel打开xml文件[重复]

    这个问题在这里已经有答案了 如何使用 Excel 和 C winforms 打开 xml 文件 我正在将数据保存到 XML 文件 并且我需要用户在应用程序更新 xml 文件后能够立即看到该文件 我需要用 Excel 打开该文件 Proces
  • git-tf checkin 线程“main”中出现异常 java.lang.StackOverflowError

    我正在尝试使用现有的 git 存储库并使用 git tf 将其签入到 TFS Preview 当我尝试签入时收到错误 这是我到目前为止所做的事情 git 克隆 bhttps github com https github com git 来
  • 在更大的项目上处理 javascript 的方法?

    几年前发现 jQuery 后 我意识到无需编写代码书籍即可真正创建交互式且用户友好的网站是多么容易 随着项目规模的增加 进行任何调试或可能实现更改或新功能所需的时间也随之增加 通过阅读各种博客并保持一定的更新 我读到了类似的库骨干网 js
  • bootstrap-vue:大多数图标未显示

    我导入all图标 如文档所述 import Vue from vue import BootstrapVue BootstrapVueIcons from bootstrap vue Vue use BootstrapVue Vue use
  • Yii2:如何通过 Composer 添加 JavaScript 库?

    我已经设置了一个基本应用程序 https github com yiisoft yii2 app basic根据这个指南 安装 Yii http www yiiframework com doc 2 0 guide start instal
  • 如何找到 ASP.NET 中哪些对象无法序列化?

    我在我的应用程序中收到以下错误 无法序列化会话状态 在 StateServer 和 SQLServer 模式下 ASP NET 将序列化会话 状态对象 结果 不可序列化的对象或 MarshalByRef 对象不是 允许的 同样的限制 如果类
  • jQuery.live() 无法在插件内部工作

    我正在编写一个插件 需要实时绑定点击 当我进行正常的单击绑定但不是实时绑定时 该插件工作正常 我已经将插件归结为基础知识 function fn liveBindTest function return this each function
  • foreach 语句中需要类型和标识符 csharp 中的错误

    我正在将这段代码的 VB net 转换为 C Dim files As String files Directory GetFiles E text txt Dim filename As String Dim file As String
  • 如何在 python pandas 中使用 df.loc 和 if 条件删除一行

    我想用if条件和df loc 比较同一列中的两个值 如果前一个值高于下一个值 我想删除整行 这是我尝试过的和我的例子 import pandas as pd data cycle 1 1 2 2 3 3 4 4 A 0 1 0 5 0 2
  • Android Base64 音频文件编码/解码

    Doing 我目前正在录制语音并将其保存为 sdCard 中的文件 该文件在 MediaPlayer 中运行正常 我想要的是 当我将此文件编码为 Base64 并发送到服务器时 一切正常 但是当我将 Base64 字符串解码为 audio
  • 解析 Logstash 中的嵌套 JSON 字符串

    我正在以 json 格式登录logstash 我的日志有以下字段 每个字段都是一个字符串 atts字段是字符串化的 json 注意 atts子字段每次都不同 这是一个例子 name bob last builder atts a 111 b
  • 在 Pandas 中的特定行和列中填充 NaN

    我有一个看起来像这样的数据框 gt gt gt df a d s 0 1 0 3 0 2 0 1 2 0 NaN 4 0 2 3 0 6 0 NaN 3 NaN NaN 3 0 4 5 0 8 0 NaN 5 6 0 NaN NaN 我必须
  • 错误 C2084“函数已具有主体”

    我是 C 编码新手 这是我在 Stack Overflow 上的第一篇文章 我正在使用 Visual C 编写基于文本的游戏 并且在此文件中收到 C2084 错误 game system functions cpp include basi
  • 将 Google 电子表格转换为 HTML 表格

    我有一个 Google 电子表格 其中的数据每周更新一次 我需要将这些数据放入我网站上的 HTML 表中 有没有一种方法可以让我使用 PHP 或 Javascript 来查找 Google 电子表格 URL 并将数据转换为 HTML 表标记
  • CSRF验证失败,但仅适用于IE9

    我已经按照中所述设置了 CSRFDjango 文档 https docs djangoproject com en dev ref contrib csrf 使用 Django 1 3 它适用于 FF 和 Safari 但在 IE9 上我得