微服务(七)-服务网关zuul(三)

简介: 微服务(七)-服务网关zuul(三)

自定义路由

首先提出一个疑问:比如说前端访问的时候必须要带某个参数过来,

比如必须要带某个token过来的话,不管放到头里也好,或者参数里也好。

否则认为这个访问就是违法的。

1、在网关中的过滤器类型filterType中总共有四种类型:①、pre(前置过滤器),②、post(后置过滤器),③、route(路由过滤器),④、error(错误过滤器)

1.1、既然做的是token的验证,是放到前置过滤器中的,代码如下:

1.2、在源代码FilterConstants这个类中有这四种类型的路由。  数字越小,优先级就越高。优先级一定要放置在最后一个前置路由器之前就可以了。官方推荐不是PRE_DECORATION_FILTER_ORDER把这个值改为多些,而是在这个值上进行加减法,一般做减法就行了。

1.3、减一代表在这个路由器之前执行,代码如下:

1.4、第三个方法:是否允许路由,去监控它true,代表一定要监控得

1.5、第四个方法 run:核心方法,思路如下:


①、我们需要从参数里面去拿到这个token得值,如果传了,就是合法得正常得请求得地址。

②、如果没传,就是不合法的请求

1.6、CookieUtil的代码如下:

1.7、交给Spring容器去管理。

1.8、然后把配置中心config启动起来,和服务网关启动,不带token的去访问:前置过滤器的成功了:只要没有token的访问都属于不正常的访问。

1.9、如果想通过话,加上cookie就可以了:

2、还有后置路由器:比如当它有结果返回出来时候,我想要在头里面加点头信息。然后给它做返回,那么我们如何去写呢?

2.1、当请求处理完,当响应结果之前过滤器就称之为后置过滤器。

比如在token验证以后将返回的结果响应头里面加点数据进去:比如加一个随机token值给它返回出去或者UUID值。这个过滤器是在发送请求响应到响应头里过滤器。

2.3、在源代码中,SEND_RESPONSE_FILTER_ORDER这个值是最大值,后置过滤器需要在它之前执行,所以减一。

2.4、重启下user-api-gateway:这个POST得意思只是后置得过滤器,不管什么类型得请求,这个请求头得信息都是有X-UUID得,这个和POST请求是没有关系的。

总结:在zuul中可以做很多的事情,特别在做鉴权上用的很多,权限校验,可以做一个token得判断,权限得校验也可以在zuul里面去写。

相关文章
|
1月前
|
API 微服务
阿里云微服务引擎 MSE 及 API 网关 2025 年 9 月产品动态
阿里云微服务引擎 MSE 及 API 网关 2025 年 9 月产品动态。
127 16
|
2月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 9 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
428 142
API 微服务
81 0
|
3月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 8 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
427 152
|
4月前
|
API
阿里云微服务引擎 MSE 及 API 网关 2025 年 7 月产品动态
阿里云微服务引擎 MSE 及 API 网关 2025 年 7 月产品动态
|
4月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 7 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
|
4月前
|
Cloud Native API
微服务引擎 MSE 及云原生 API 网关 2025 年 6 月产品动态
微服务引擎 MSE 及云原生 API 网关 2025 年 6 月产品动态
|
4月前
|
运维 Cloud Native 应用服务中间件
阿里云微服务引擎 MSE 及 API 网关 2025 年 6 月产品动态
阿里云微服务引擎 MSE 面向业界主流开源微服务项目, 提供注册配置中心和分布式协调(原生支持 Nacos/ZooKeeper/Eureka )、云原生网关(原生支持Higress/Nginx/Envoy,遵循Ingress标准)、微服务治理(原生支持 Spring Cloud/Dubbo/Sentinel,遵循 OpenSergo 服务治理规范)能力。API 网关 (API Gateway),提供 APl 托管服务,覆盖设计、开发、测试、发布、售卖、运维监测、安全管控、下线等 API 生命周期阶段。帮助您快速构建以 API 为核心的系统架构.满足新技术引入、系统集成、业务中台等诸多场景需要。
|
5月前
|
应用服务中间件 网络安全 数据安全/隐私保护
网关服务器配置指南:实现自动DHCP地址分配、HTTP服务和SSH无密码登录。
哇哈哈,道具都准备好了,咱们的魔术秀就要开始了。现在,你的网关服务器已经魔法满满,自动分配IP,提供网页服务,SSH登录如入无人之境。而整个世界,只会知道效果,不会知道是你在幕后操控一切。这就是真正的数字世界魔法师,随手拈来,手到擒来。
279 14

热门文章

最新文章