Zuul 是 Netflix 提供的⼀个开源的 API ⽹关服务器,是客户端和⽹站后端所有请求的中间层,对外开放 ⼀个 API,将所有请求导⼊统⼀的⼊⼝,屏蔽了服务端的具体实现逻辑,Zuul 可以实现反向代理的功 能,在⽹关内部实现动态路由、身份认证、IP 过滤、数据监控等。
0. 项目搭建(接着前面的项目进行搭建)
在 spring-cloud 下创建一个新的模块 ?
点击 next ?
填写 ? 的信息,然后点击 next ?
选中 ?的那些可选项,点击 next,再点击 Finish 键,完成项目的创建 ?
1. 项目配置
将 resources 的 application.properties 通过 alt + shift + r 快捷键,重命名为 application.yml
并在其中填写 ? 的内容
server:
port: 8030
spring:
application:
name: gateway
eureka:
client:
service-url:
defaultZone: http://localhost:8761/eureka/
instance:
prefer-ip-address: true
# zuul 路由配置 (provider 指的是注册中心的提供者的应用名)
zuul:
routes:
provider: /p/**
启动类的修改 ?
打开 mr.s.zuul 下找到 SpringZuulApplication 启动类,修改为 ?
package mr.s.zuul;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
@EnableZuulProxy
@EnableAutoConfiguration
public class SpringZuulApplication {
public static void main(String[] args) {
SpringApplication.run(SpringZuulApplication.class, args);
}
}