Springboot設置跨域的三種方式
點擊上方藍色字體,選擇“標星公眾號”
優(yōu)質文章,第一時間送達
? 作者?|??cchilei?
來源 |? urlify.cn/ZvM7Jf
方式一(精細配置)
在需要跨域的整個Controller或者單個方法上添加@CrossOrigin注解
方式二(全局配置)
@Configuration
public?class?WebMvcConfig?extends?WebMvcConfigurerAdapter?{
????@Override
????public?void?addCorsMappings(CorsRegistry?registry)?{
????????registry.addMapping("/**")
????????????????.allowedOrigins("*")
????????????????.allowedMethods("POST",?"GET",?"PUT",?"OPTIONS",?"DELETE")
????????????????.maxAge(3600)
????????????????.allowCredentials(true);
????}
}
方式三(通過filter)
@Component
@WebFilter(urlPatterns?=?"/*",?filterName?=?"authFilter")?//這里的“/*”?表示的是需要攔截的請求路徑
public?class?PassHttpFilter?implements?Filter?{
????@Override
????public?void?init(FilterConfig?filterConfig)?throws?ServletException?{?}
????@Override
????public?void?doFilter(ServletRequest?servletRequest,?ServletResponse?servletResponse,?FilterChain?filterChain)?throws?IOException,?ServletException?{
????????HttpServletResponse?httpResponse?=?(HttpServletResponse)servletResponse;
????????httpResponse.setHeader("Access-Control-Allow-Headers","Origin,?X-Requested-With,?Content-Type,?Accept");
????????httpResponse.setHeader("Access-Control-Allow-Credentials",?"true");
????????httpResponse.addHeader("Access-Control-Allow-Origin",?"http://127.0.0.1:8080");
????????filterChain.doFilter(servletRequest,?httpResponse);
????}
????@Override
????public?void?destroy()?{?}
}


??? ?
感謝點贊支持下哈?
評論
圖片
表情
