小D课堂 - 新版本微服务springcloud+Docker教程_6-03 高级篇幅之zuul常用问题分析
笔记
3、高级篇幅之Zuul常用问题分析和网关过滤器原理分析
简介:讲解Zuul网关原理和过滤器生命周期,
1、路由名称定义问题
路由映射重复覆盖问题
2、Http请求头过滤问题
3、过滤器执行顺序问题 ,过滤器的order值越小,越先执行
4、共享RequestContext,上下文对象
开始
路由自定义的问题
自定义路由在访问的时候可能会404
启动服务,
访问订单的服务,order的保存接口
商品的服务成功。product的find接口
因为这里的起名都是/apigateway/** 。apigateway重复了。下面的会把上面的覆盖
起名的时候可以在后面加上相关的模块的路径。这样就不会冲突
启动服务,在访问,有时候需要等一会访问,因为需要从注册中心拉取服务的信息。
直接通过product-service访问是不行的,因为已经忽略掉了这个服务。
因为这里忽略了 所有-service的路径的服务,
http请求头过滤问题
开发的时候一般会传token过来。
order的服务里面
这里热requestMapping支持get和post
通过网关访问的时候查看 是否可以获取到token和cookie的值
postman测试
cookie没有被打印出来
网关的配置文件 点进去routes
继续点
为了安全起见不会传递http请求的header信息
默认过滤掉这这三种:Cookie 、 set-Cookie 、 Autorization
在配置文件内把sensitve-headers配置为空
重启网关服务。postman再次发送请求
cookie的值获取到了
过滤器执行顺序问题
zuul的过滤流程图
自定义过滤器 一般会去找这个类
有type和order这两种类型。后续继承ZuulFilter这个类自定义Filter
共享RequestContext,上下文对象
不是很重要的内容。