黑马学SpringCloud-Gateway


目录:

(1)网关的作用介绍

(2)网关快速入门

(3)路由断言工厂

(4)路由的过滤器

(5)全局过滤器

(6)过滤器链执行顺序

(8)网关的cors跨越配置


(1)网关的作用介绍

黑马学SpringCloud-Gateway_第1张图片

 并不是所有人可以访问我们的业务,需要去进行拦截,网关来做这件事,一切请求先到网关,再到微服务

黑马学SpringCloud-Gateway_第2张图片

黑马学SpringCloud-Gateway_第3张图片 黑马学SpringCloud-Gateway_第4张图片

(2)网关快速入门

 黑马学SpringCloud-Gateway_第5张图片

新建一个Model:

黑马学SpringCloud-Gateway_第6张图片

黑马学SpringCloud-Gateway_第7张图片

在pom中引入依赖:

黑马学SpringCloud-Gateway_第8张图片

创建启动类启动网关:GetwayApplication:

黑马学SpringCloud-Gateway_第9张图片

 网关的功能有很多,我们先来做一个请求的路由:

黑马学SpringCloud-Gateway_第10张图片

 编写配置文件:application.yml

黑马学SpringCloud-Gateway_第11张图片

黑马学SpringCloud-Gateway_第12张图片

 启动服务:

黑马学SpringCloud-Gateway_第13张图片

访问:

黑马学SpringCloud-Gateway_第14张图片

黑马学SpringCloud-Gateway_第15张图片

黑马学SpringCloud-Gateway_第16张图片

黑马学SpringCloud-Gateway_第17张图片

(3)路由断言工厂

 黑马学SpringCloud-Gateway_第18张图片

黑马学SpringCloud-Gateway_第19张图片 黑马学SpringCloud-Gateway_第20张图片

例如:

在来配置文件中添加配置:After指定时间点之后才能发起请求

黑马学SpringCloud-Gateway_第21张图片

 访问order请求不符合规则报404黑马学SpringCloud-Gateway_第22张图片

 改为Before:指定访问在某个时间点之前才能访问:

再次访问可以访问:

黑马学SpringCloud-Gateway_第23张图片

黑马学SpringCloud-Gateway_第24张图片

(4)路由的过滤器配置

黑马学SpringCloud-Gateway_第25张图片

 黑马学SpringCloud-Gateway_第26张图片

黑马学SpringCloud-Gateway_第27张图片 在配置文件中添加过滤的请求头:AddRequestHeader

黑马学SpringCloud-Gateway_第28张图片 修改user-service的请求方法:添加一个参数并打印

黑马学SpringCloud-Gateway_第29张图片

 重启服务:

黑马学SpringCloud-Gateway_第30张图片

成功的打印了信息:

黑马学SpringCloud-Gateway_第31张图片

 配置默认的过滤器对所有请求都生效黑马学SpringCloud-Gateway_第32张图片

 配置全局过滤器注释局部过滤器:

黑马学SpringCloud-Gateway_第33张图片

重启网关 ,访问服务:

 黑马学SpringCloud-Gateway_第34张图片

 访问:发现两个端口的的都生效了黑马学SpringCloud-Gateway_第35张图片

黑马学SpringCloud-Gateway_第36张图片 黑马学SpringCloud-Gateway_第37张图片

(5)全局过滤器

黑马学SpringCloud-Gateway_第38张图片

 黑马学SpringCloud-Gateway_第39张图片

写一个过滤器类:

黑马学SpringCloud-Gateway_第40张图片

加上注解有两种方式可以通过@Order(-1)还可以实现Orderd:指明过滤器的执行顺序

黑马学SpringCloud-Gateway_第41张图片 -1黑马学SpringCloud-Gateway_第42张图片 黑马学SpringCloud-Gateway_第43张图片

 重启网关:访问访问失败

黑马学SpringCloud-Gateway_第44张图片

加上参数:成功访问

黑马学SpringCloud-Gateway_第45张图片

 参数写错:又不能访问了

黑马学SpringCloud-Gateway_第46张图片

 黑马学SpringCloud-Gateway_第47张图片

(6)过滤器链执行顺序

黑马学SpringCloud-Gateway_第48张图片

 黑马学SpringCloud-Gateway_第49张图片

 过滤器的执行顺序是根据order的值来执行

黑马学SpringCloud-Gateway_第50张图片黑马学SpringCloud-Gateway_第51张图片 (8)网关的cors跨越配置

黑马学SpringCloud-Gateway_第52张图片

我们的跨域请求不需要在每个每个微服务里都去配置,在网关处理就可以了

黑马学SpringCloud-Gateway_第53张图片

准备前端,发送请求:

黑马学SpringCloud-Gateway_第54张图片

端口不一致出现问题:

黑马学SpringCloud-Gateway_第55张图片

在网关添加配置:

黑马学SpringCloud-Gateway_第56张图片

 重启网关:在次刷新查询到接口

黑马学SpringCloud-Gateway_第57张图片

黑马学SpringCloud-Gateway_第58张图片

黑马学SpringCloud-Gateway_第59张图片

 黑马学SpringCloud-Gateway_第60张图片

 

你可能感兴趣的:(微服务,架构,云原生)