赞
踩
新建gateway微服务module,并导入依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-gateway</artifactId>
</dependency>
在主启动类中配置@EnableDiscoveryClient
注解开启服务注册与发现,这样网关微服务能够发现其他服务
package com.kenai.gulimall.gateway;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
@EnableDiscoveryClient
//commom依赖包中有mybatis依赖包,需要配置数据源,但是gateway服务不需要数据库相关服务,所以去除掉
@SpringBootApplication(exclude = {DataSourceAutoConfiguration.class})
public class GulimallGatewayApplication {
public static void main(String[] args) {
SpringApplication.run(GulimallGatewayApplication.class, args);
}
}
在application.properties
配置nacos注册中心地址和该应用服务名称
spring.cloud.nacos.discovery.server-addr=localhost:8848
spring.application.name=gulimall-gateway
# 网关服务端口为90
server.port=90
也可以在bootstrap.properties中配置nacos配置中心地址和该应用服务名称,从而可以在配置中心中修改配置文件.
spring.cloud.nacos.config.server-addr=localhost:8848
spring.application.name=gulimall-gateway
# nacos配置中心的命名空间
spring.cloud.nacos.config.namespace=0f8c698c-1c8c-4aff-865a-dcf2ee83607b
网关配置(请求url、断言等)
spring: cloud: gateway: routes: - id: test_route # 要访问的地址,即路由目的地 uri: https://www.baidu.com # 断言,即满足的条件 predicates: # 需要满足请求包含参数url,并且对应的值为baidu - Query=url, baidu - id: qq_route uri: https://www.qq.com # 断言,即满足的条件 predicates: # 需要满足请求包含参数url,并且对应的值为baidu - Query=url, qq
访问测试
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。