Spring Boot 不允許載入iframe問題解決
阿新 • • 發佈:2019-02-18
spring Security下,X-Frame-Options預設為DENY,非spring Security環境下,X-Frame-Options的預設大多也是DENY,這種情況下,瀏覽器拒絕當前頁面載入任何Frame頁面,設定含義如下:
DENY:瀏覽器拒絕當前頁面載入任何Frame頁面
SAMEORIGIN:frame頁面的地址只能為同源域名下的頁面
ALLOW-FROM:origin為允許frame載入的頁面地址。
在spring boot專案中出現不能載入iframe
頁面報一個"Refused to display 'http://......' in a frame because it set 'X-Frame-Options' to 'DENY'. "錯誤
解決方式:
因spring Boot採取的java config,在配置spring security的位置新增:
@Override protected void configure(HttpSecurity http) throws Exception { http.headers().frameOptions().disable(); http .csrf().disable(); http .authorizeRequests() .anyRequest().authenticated(); http.formLogin() .defaultSuccessUrl("/platform/index",true) .loginPage("/login") .permitAll() .and() .logout() .logoutUrl("/logout"); http.addFilterBefore(wiselyFilterSecurityInterceptor(),FilterSecurityInterceptor.class);
}