赞
踩
本篇文章使用一个简单的示例来演示Spring Cloud Gateway的使用方法。
网关是所有微服务的门户,我总结了一些网关的常用应用场景。
断言是Java 8提供的一个函数式接口,它允许接收一个参数并返回一个布尔值,可以用于条件过滤、请求参数的校验。
Spring Cloud Gateway 默认提供了许多断言,这些断言的源码在 org.springframework.cloud.gateway.handler.predicate
包中。这些断言会分别匹配 HTTP 请求的不同属性,并且多个断言可以通过 and 逻辑进行组合。
过滤器分为Pre类型的过滤器和Post类型的过滤器。
在 Spring Cloud Gateway 中内置了很多过滤器,过滤器有两种实现,分别是 GatewayFilter
和 GlobalFilter
。 GlobalFilter
会应用到所有的路由上,而 GatewayFilter
只会应用到单个路由或者一个分组的路由上。
搭建项目前需要先启动 Nacos 服务。我比较喜欢使用 Docker 安装、启动 Nacos 。如果你对这种方式感兴趣,可以参考我之前写的一篇文章传送门。
项目结构
项目名称 | 端口号 | 说明 |
---|---|---|
jasmine-cloud | -- | 父工程 |
jasmine-gateway | 9010 | 网关服务,服务注册到nacos |
jasmine-auth | 901 |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。