Zuul 跨域
- 第一种方法:普通的跨域做法,注解形式的那种。
- @CrossOrigin(allowCredentials="true") 允许跨域,并且允许cookie跨域。
package com.imooc.apigateway.config; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; import org.springframework.web.filter.CorsFilter; import java.util.Arrays; /** * 跨域配置 * C - Cross O - Origin R - Resource S - Sharing */ @Configuration public class CorsConfig { @Bean public CorsFilter corsFilter() { final UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigurationSource(); final CorsConfiguration config = new CorsConfiguration(); config.setAllowCredentials(true); config.setAllowedOrigins(Arrays.asList("*")); //http:www.a.com config.setAllowedHeaders(Arrays.asList("*")); config.setAllowedMethods(Arrays.asList("*")); config.setMaxAge(300l); source.registerCorsConfiguration("/**", config); return new CorsFilter(source); } }
- 第二种方法:在zuul里面做跨域,这样的话,每个服务里也都不需要配了。 这个配置也很常见了。
- setMaxAge(300):在300秒内不再做校验了。 跨域还可以在Nginx上面解决。