CSRF验证失败,但仅限于IE9

Dja*_*sül 6 django csrf django-csrf

我已经按照Django文档(使用Django 1.3)中的描述设置了CSRF .它适用于FF和Safari,但在IE9上我得到了

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

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

Set-Cookie  csrftoken=8db3637951243ffb591e6b2d6998ed03; expires=Fri, 14-Sep-2012 08:01:52 GMT; Max-Age=31449600; Path=/
Run Code Online (Sandbox Code Playgroud)

当它以普通形式使用时,它在IE9中工作(即不涉及Ajax).

我在nginx/1.1.2后面使用Django.

我在这里缺少什么提示?

aka*_*ola 3

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

Django 的票证#17157建议在文档中添加有关此问题的注释。