当前位置: 首页 > Web前端 > HTML

springboot跨域问题HTTP访问控制(CORS)

时间:2023-04-02 13:13:15 HTML

1.错误描述其实是我上一个guacamole项目的衍生问题,因为需要对外提供接口。当前端页面填满我在其他服务器上安排的guacamole服务器的地址时(我用firefox浏览控制台,可以清楚的看到'Access-Control-Allow-Origin'的字样少了CORS标头;@ConfigurationpublicclassGlobalCorsConfigextendsWebMvcConfigurerAdapter{privateCorsConfigurationbuildConfig(){CorsConfigurationcorsConfiguration=newCorsConfiguration();corsConfiguration.addAllowedOriginadd("*");corsConfiguration.addAllowedOriginadd("*");.addAllowedMethod("*");corsConfiguration。addExposedHeader("Content-Type");corsConfiguration.addExposedHeader("X-Requested-With");corsConfiguration.addExposedHeader("接受");corsConfiguration.addExposedHeader("来源");corsConfiguration.addExposedHeader("访问控制请求方法");corsConfiguration.addExposedHeader("访问控制请求头");corsConfiguration.setAllowCredentials(true);返回corsConfiguration;}@BeanpublicCorsFiltercorsFilter(){UrlBasedCorsConfigurationSourcesource=newUrlBasedCorsConfigurationSource();source.registerCorsConfiguration("/**",buildConfig());返回新的CorsFilter(来源);}}创建这个类,然后在需要跨域的类上加上注解@CrossOrigin,跨域问题就解决了!具体原理我还没看懂,如果看懂了再补充。这是一个帮助我解决问题的网址:https://www.w3xue.com/exp/article/20193/23459.html