我在 IE 中的 iframe 上遇到 CSRF 验证失败的问题。
我了解到,如果我可以使用 this question 中的信息通过添加某些标题来访问父页面的服务器,我可以修复它。不幸的是,我无权访问父页面(第三方主机平台),所以这行不通。
有问题的页面是:
http://yuchan.myshopify.com/collections/iphone-4-artist-series/products/custom-product
要重现该问题,请单击“上传您的作品”(第 2 步)并尝试在 IE 中上传内容。您应该收到 CSRF 错误。
我将禁用 CSRF 保护,但我很好奇其他人对我的情况有何看法。
谢谢!
最佳答案
出现这个问题是因为 IE 默认不接受 iframe 中的 cookie。您可以通过设置正确的标题来解决这个问题:
response = render_to_response('mytemplate.html')
response["P3P"] = 'CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"'
你有一些关于这里的博客条目:http://adamyoung.net/IE-Blocking-iFrame-Cookies .
关于Django -- IE 上 IFrame 的 CSRF 失败。无法访问策略修复的父服务器 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3776077/