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 链接nacos的端口
gateway:
routes:
- id: userservice #路由id,是一个唯一标识
uri: lb://userservice #lb:负载均衡 userservice是服务名
predicates: #断言工厂,下面的规则如果成立,就会进行路由
- Path=/user/** # 以/user开头的请求都路由到userservice微服务中
- id: orderservice
uri: lb://orderservice
predicates:
- Path=/order/**
6.跨域问题
在网关配置文件中增加如下内容
spring: cloud: gateway:
一定要复制很容易打错
globalcors: # 全局的跨域处理 add-to-simple-url-handler-mapping: true # 解决options请求被拦截问题 corsConfigurations: '[/**]': allowedOrigins: # 允许哪些网站的跨域请求,如果是80端口,不要写端口号
-
"http://localhost:8090" 127.0.0.1:8090"
-
"http://localhost" 127.0.0.1" allowedMethods: # 允许的跨域ajax的请求方式
-
"GET"
-
"DELETE"
-
"OPTIONS" ders: "*" # 允许在请求中携带的头信息 allowCredentials: true # 是否允许携带cookie maxAge: 360000 # 这次跨域检测的有效期
-
-
-
-