1.导入依赖
<!--网关--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-gateway</artifactId> </dependency> <!--nacos服务发现依赖--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId> </dependency>
2.配置文件
server: port: 10010 spring: application: name: gateway cloud: nacos: discovery: server-addr: localhost:8848 gateway: routes: - id: userservice #路由id,是一个唯一标识 uri: lb://userservice #lb:负载均衡 userservice是服务名 predicates: #断言工厂,下面的规则如果成立,就会进行路由 - Path=/user/** # 以/user开头的请求都路由到userservice微服务中 - id: orderservice #路由id,是一个唯一标识 uri: lb://orderservice #lb:负载均衡 userservice是服务名 predicates: #断言工厂,下面的规则如果成立,就会进行路由 - Path=/order/** # 以/user开头的请求都路由到userservice微服务中 #基于网关访问用户服务 #http://localhost:10010/user/1
3.跨域问题
spring: cloud: gateway: # 。。。 globalcors: # 全局的跨域处理 add-to-simple-url-handler-mapping: true # 解决options请求被拦截问题 corsConfigurations: '[/**]': allowedOrigins: # 允许哪些网站的跨域请求,如果是80端口,不要写端口号 - "http://localhost:8090" - "http://127.0.0.1:8090" - "http://localhost" - "http://127.0.0.1" allowedMethods: # 允许的跨域ajax的请求方式 - "GET" - "POST" - "DELETE" - "PUT" - "OPTIONS" allowedHeaders: "*" # 允许在请求中携带的头信息 allowCredentials: true # 是否允许携带cookie maxAge: 360000 # 这次跨域检测的有效期
标签:http,跨域,cloud,userservice,gateway,路由 From: https://www.cnblogs.com/linxiaofeng/p/16725630.html