关于spring security上使用ifame时候禁止跨域

Refused to display 'http://localhost:8080/hello' in a frame because it set 'X-Frame-Options' to 'deny'.

把这个问题也贴成文字方便搜索。

最近闲的无聊,公司项目也完成了,因此有空了捡起放下已久的java,看了一下spring boot 和spring security,学习一下。

用这两个和easyui搭起一个大体框架的时候,出问题了,点击链接添加一个tab的时候,出现以上错误,一开始我以为是请求头那边出的错,然后在那边设置了把'X-Frame-Options' 设置成SAMEORIGIN,然而并没有什么用,看了网络上大神说可能是在tomcat里面,需要设置一下,然后用的是spring boot搭建的,里面自带有tomcat,捣鼓了一下,并没有什么用,后来才发现是spring security的问题,在security 4以上,会默认吧ifame进行设置成‘DENY',禁止任何跨域:因此,稍加一行代码就可以把这个功能去掉了:

关于spring security上使用ifame时候禁止跨域_第1张图片

如上,在配置的里面加一个请求头的设置,吧frameOptions()设置一下。再重新跑项目,终于ok,可以在tab里面动态添加页面了!

看来还是有很多需要慢慢学习。

你可能感兴趣的:(java,spring,security,spring,boot)