该问题是做文件导出的时候遇到的。
1.在前端加
<security:http auto-config="true" use-expressions="true">
<security:headers>
<security:frame-options policy="SAMEORIGIN"/>
</security:headers>
无效。
2.控制层加
response.setHeader("X-Frame-Options", "SAMEORIGIN");// 解决IFrame拒绝的问题
依旧无效。
3.此时了解了百度了解了X-Frame-Options的三种状态
X-Frame-Options 有三个值:
DENY
表示该页面不允许在 frame 中展示,即便是在相同域名的页面中嵌套也不允许。
SAMEORIGIN
表示该页面可以在相同域名页面的 frame 中展示。
ALLOW-FROM uri
表示该页面可以在指定来源的 frame 中展示。
3.检查springmvc中的spring Security配置。
如下:
在加入.and().headers().frameOptions().disable()后依旧报错。
4.突然想起导出时,应该有导出路径,而Security配置的页面路径权限并没有开放。
因此

设置路径权限,解决!

本文记录了一次解决X-Frame-Options导致的文件导出问题的过程,尝试了多种方法如修改前端配置、控制层设置响应头及调整SpringSecurity配置,最终通过设置特定路径权限成功解决。
1190

被折叠的 条评论
为什么被折叠?



