我有一个web应用程序工作得很好,直到有人在我们的服务器上实现了CSRF修复程序。现在我们不能在我们的http请求中不包含特定标头的情况下调用POST请求。这打破了文件下载,需要POST请求来获取数据而不是使用GET url参数。使用POST通过JavaScript下载CSRF头文件的Internet Explorer触发器文件
我有一个修复程序,它使用新的X-CSRF标头来执行ajax POST请求(包含发布数据)。这会起作用,并返回正确的内容处置响应头。问题是你无法让浏览器打开“另存为”对话框或自动下载。
在Chrome/Firefox中,我没有在其中添加一个虚拟锚标签与数据URI并点击一个黑客:
Internet Explorer不喜欢数据URI或点击该HREF与JavaScript。 我不能使用闪光灯作为选项,因为客户希望产品使用闪光灯。
Iframes不起作用,因为您不能发送带Iframe的自定义http标头。
您可以将Jquery添加到POST的表单,但它不会触发“另存为”或下载浏览器交互。
是否有任何解决方案,实际与IE 9或10的作品?