我正在使用角度上传来处理通过HTTPS提供的应用程序中的文件上传。 Angular-upload设置为“在不支持FormData时回退到iframe上传”,但在IE9中使用iframe上传HTTPS的组合导致以下错误出现在控制台中:
SEC7111: HTTPS security is compromised by res://ieframe.dll/forbidframing.htm
SEC7111: HTTPS security is compromised by res://ieframe.dll/ErrorPageTemplate.css
SEC7111: HTTPS security is compromised by res://ieframe.dll/errorPageStrings.js
SEC7111: HTTPS security is compromised by res://ieframe.dll/httpErrorPagesScripts.js
SEC7111: HTTPS security is compromised by res://ieframe.dll/red_x.png
SEC7111: HTTPS security is compromised by res://ieframe.dll/bullet.png
SEC7111: HTTPS security is compromised by res://ieframe.dll/background_gradient.jpg
我尝试将 add name =“X-Frame-Options”value =“SAMEORIGIN”添加到web.config中的自定义标头中,以及删除 add name = “Strict-Transport-Security”值=“max-age = 31536000”,但这两种方法都没有改变结果。
除了拒绝支持IE9(在这种情况下不是选项)之外,还有其他任何想法如何使用IE9中的HTTPS / iframe很好地进行角度上传?
更新我能够通过使用[AllowAnonymous]标记web api方法来部分解决问题。现在已接受上传的文件,但出现了相关问题:
1)我可以在“网络”监视器上看到有来自服务器的响应,如预期的那样
2)然而,监视器以永久“待定”状态显示请求,因此响应数据永远不会返回到Angular控制器,因此永远不会更新UI
3)上面显示的相同错误列表继续显示在控制台
中答案 0 :(得分:2)
错误消息显示您的子帧具有X-FRAME-OPTIONS
标头,可防止其被加框。你需要解决这个问题;使用Fiddler验证标头是否已正确删除。
另请注意,IE会将application/json
视为文件下载,并且不会将其呈现为内联。