Spring Cloud(七)服务网关 Zuul Filter 使用
2020-12-13 06:19
标签:特性 客户端 ota def ade ide 依赖 操作 均衡 上一篇文章中,讲了Zuul 转发,动态路由,负载均衡,等等一些Zuul 的特性,这个一篇文章,讲Zuul Filter 使用,关于网关的作用,这里就不再次赘述了,重点是zuul的Filter ,我们可以实现安全控制,比如,只有请求参数中有token和密码的客户端才能访问服务端的资源。那么如何来实现Filter了? Zuul大部分功能都是通过过滤器来实现的。Zuul中定义了四种标准过滤器类型,这些过滤器类型对应于请求的典型生命周期。 PRE:这种过滤器在请求被路由之前调用。我们可利用这种过滤器实现身份验证、在集群中选择请求的微服务、记录调试信息等。 ROUTING:这种过滤器将请求路由到微服务。这种过滤器用于构建发送给微服务的请求,并使用Apache HttpClient或Netfilx Ribbon请求微服务。 OST:这种过滤器在路由到微服务以后执行。这种过滤器可用来为响应添加标准的HTTP Header、收集统计信息和指标、将响应从微服务发送给客户端等。 ERROR:在其他阶段发生错误时执行该过滤器。 除了默认的过滤器类型,Zuul还允许我们创建自定义的过滤器类型。例如,我们可以定制一种STATIC类型的过滤器,直接在Zuul中生成响应,而不将请求转发到后端的微服务。 我们先拿之前两篇文章,构建的两个微服务代码为基础,进行下面的操作 建议先阅读以下两篇文章 Spring Cloud(四) 服务提供者 Eureka + 服务消费者 Feign http://www.ymq.io/2017/12/06/spring-cloud-feign/ http://www.ymq.io/2017/12/05/spring-cloud-ribbon-rest/ 导入第三篇文章中的项目:作为服务注册中心 导入第三篇文章中的项目:作为服务的提供者 新建项目
在程序的启动类 配置文件 Spring Cloud(七)服务网关 Zuul Filter 使用 标签:特性 客户端 ota def ade ide 依赖 操作 均衡 原文地址:https://www.cnblogs.com/lukelook/p/11174813.htmlSpring Cloud Zuul
zuul 执行流程
准备工作
Spring Cloud(三) 服务提供者 Eureka + 服务消费者(rest + Ribbon)Eureka Service
spring-cloud-eureka-service
Eureka Provider
spring-cloud-eureka-provider-1
spring-cloud-eureka-provider-2
spring-cloud-eureka-provider-3
简单使用
spring-cloud-zuul-filter
添加依赖
dependency>
groupId>org.springframework.cloudgroupId>
artifactId>spring-cloud-starter-zuulartifactId>
dependency>
开启服务注册
ZuulFilterApplication
通过 @EnableZuulProxy
开启 Zuul 服务网关package io.ymq.example.zuul.filter;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.netflix.zuul.EnableZuulProxy;
import org.springframework.context.annotation.Bean;
@EnableZuulProxy
@SpringBootApplication
public class ZuulFilterApplication {
public static void main(String[] args) {
SpringApplication.run(ZuulFilterApplication.class, args);
}
}
添加配置
application.yml
spring:
application:
name: zuul-service-filter
server:
port: 9000
zuul:
routes:
api:
path: /**
serviceId: eureka-provider
eureka:
client:
serviceUrl:
defaultZone: http://localhost:8761/eureka/
文章标题:Spring Cloud(七)服务网关 Zuul Filter 使用
文章链接:http://soscw.com/essay/32859.html