1. 概述
1.1 插件名称#
- Request(请求)插件
1.2 适用场景#
- 请求插件能够对
uri的请求参数进行自定义修改。
1.3 插件功能#
Apache ShenYu网关在对目标服务进行代理调用的时候,允许用户使用request插件对请求参数、请求头以及Cookie来添加、修改、移除请求头。
1.4 插件代码#
- 核心模块
shenyu-plugin-redirect - 核心类
org.apache.shenyu.plugin.request.RequestPlugin
1.5 添加自哪个 shenyu 版本#
- 2.4.0
2. 如何使用插件
2.1 插件使用流程图#

2.2 导入 pom#
- 在网关的
pom.xml文件中添加插件 maven 配置,默认已经添加。
<!-- apache shenyu request plugin start--> <dependency> <groupId>org.apache.shenyu</groupId> <artifactId>shenyu-spring-boot-starter-plugin-request</artifactId> <version>${project.version}</version> </dependency> <!-- apache shenyu request plugin end-->2.3 启用插件#
在
shenyu-admin--> 基础配置 --> 插件管理 -->request设置为开启。如果此处页面上存在需要配置
ruleHandlePageType的选项,可以配置任一字符串,如:custom,对请求没有影响,后面版本会移除掉该选项。
2.4 配置插件#
选择器和规则,只有匹配的请求,才会进行转发和重定向,请参考:选择器规则管理。
shenyu-admin插件列表 -->HttpProcess-->Request,先添加选择器,然后添加规则:添加选择器:

添加规则:

2.5 示例#
2.5.1 添加请求参数#
- 我们在
规则配置自定义路径时,应该为一个可达的服务路径。 - 当匹配到请求后,根据自定义的路径,
Apache ShenYu网关会进行服务跳转。
- 参考本地部署启动 admin 和网关
- 参考2.2导入 pom 并重启网关
- 参考2.3启用插件
- 启动 shenyu-examples-http 项目
- 参考2.4及选择器规则管理配置插件规则
- 接口调用:http-test-api.http
调用选择器和规则声明的接口,将会看到request插件中配置的请求参数。

3. 如何禁用插件
在
shenyu-admin--> 基础配置 --> 插件管理 -->Request设置为禁用。