SpringCloud-GetWay 路由网关

接上文 SpringCloud-Hystrix 服务降级与熔断

SpringCloud-GetWay 路由网关_第1张图片
微服务也是如此,不是所有微服务需要直接暴露给外部调用,就需要使用路由机制,添加一层防护,让所有的请求全部通过路由来转发到各个微服务,并转发给多个相同微服务实例,也可以实现负载均衡。
SpringCloud-GetWay 路由网关_第2张图片

1.部署网关

新建模块
SpringCloud-GetWay 路由网关_第3张图片
SpringCloud-GetWay 路由网关_第4张图片
SpringCloud-GetWay 路由网关_第5张图片
添加启动文件
SpringCloud-GetWay 路由网关_第6张图片
启动
SpringCloud-GetWay 路由网关_第7张图片
查看是否注册成功
SpringCloud-GetWay 路由网关_第8张图片
对路由进行配置
SpringCloud-GetWay 路由网关_第9张图片
访问之前的借阅信息
SpringCloud-GetWay 路由网关_第10张图片

http://localhost:8500/borrow/1,相当于访问了http://borrow-service/borrow/1,其中localhost:8500相当于网关配置中的url:lb://borrow-service

2.路由过滤器

若希望请求到达时,在请求头中添加一些信息再转发给我们的服务,此时可以通过路由过滤器来完成,需要配置文件。
SpringCloud-GetWay 路由网关_第11张图片
SpringCloud-GetWay 路由网关_第12张图片

重启book-service,geteway
SpringCloud-GetWay 路由网关_第13张图片
访问book-service出现过滤器配置的内容
SpringCloud-GetWay 路由网关_第14张图片

2.1 自定义全局过滤器

全局过滤器能作用于全局,需要通过代码进行编写。
SpringCloud-GetWay 路由网关_第15张图片
编写判断
SpringCloud-GetWay 路由网关_第16张图片
重启getway,查看过滤效果
SpringCloud-GetWay 路由网关_第17张图片成功实现过滤效果
SpringCloud-GetWay 路由网关_第18张图片
定义多个过滤器,并可手动指定过滤器之间的顺序。

这里写错了,第20行输出为    System.out.println(request.getHeaders().get("Test"));

SpringCloud-GetWay 路由网关_第19张图片
重启geteway服务。全局过滤器order=0
SpringCloud-GetWay 路由网关_第20张图片

SpringCloud-GetWay 路由网关_第21张图片全局过滤器order=1
SpringCloud-GetWay 路由网关_第22张图片
SpringCloud-GetWay 路由网关_第23张图片
全局过滤器order=2
SpringCloud-GetWay 路由网关_第24张图片

**需要项目资料的可关注后在下方评论1,后续会持续更新

你可能感兴趣的:(springCloud,spring,cloud,java,spring)