Skip to content

fizzgate/fizz-plugin-header-response

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

home false
title HTTP响应头管理插件

概述

基于fizz的插件机制,HTTP响应头管理插件,方便更改网关响应头参数及值

插件说明

Header Response Plugin插件,是一个非常简单的插件,API响应是指API网关返回客户端的响应,HTTP响应头是API响应中的一部分。您可以自定义HTTP响应头,在返回的API响应中指定您配置的响应头。

使用说明

I、gateway项目pom文件中引入以下依赖:

<dependency> <groupId>com.fizzgate</groupId> <artifactId>fizz-plugin-header-response</artifactId> <version>${fizz.version}</version> </dependency>

II. 管理后台导入以下SQL

insert into `tb_plugin` (`fixed_config`, `id`, `eng_name`, `chn_name`, `config`, `order`, `instruction`, `type`, `create_user`, `create_dept`, `create_time`, `update_user`, `update_time`, `status`, `is_deleted`) values('{\"configs\":[{\"gwGroup\":\"default\",\"headers\":[{\"name\":\"hdr1\",\"value\":\"val1\",\"action\":\"ADD\"}]}]}','51','header_response_plugin','HTTP响应头管理插件','[{\"field\":\"config\",\"label\":\"json配置\",\"component\":\"textarea\",\"dataType\":\"string\",\"desc\":\"json配置\",\"rules\":[]}]','100',NULL,'2','1123598821738675201','1260823335286165505','2022-05-01 14:44:18','1123598821738675201','2022-05-01 14:44:18','1','0');

更多网关二次开发请参考网关快速开发插件开发样例

III、可在Fizz Admin管理系统中网关管理->插件管理中配置headerResponsePlugin插件来实现响应头参数值更换。

HTTP响应头管理插件配置规则说明

表单定义->插件级别的自定义配置信息

{ "configs": [ { "gwGroup": "fizz-gateway-demo", "headers": [	{ "name": "fizz-header-override", "value": "Override", "action": "OVERRIDE"	},	{ "name": "fizz-header-append", "value": "Append", "action": "APPEND"	},	{ "name": "fizz-header-delete", "value": "Delete", "action": "DELETE"	},	{ "name": "fizz-header-skip", "value": "Skip", "action": "SKIP"	},	{ "name": "fizz-header-add", "value": "Add", "action": "ADD"	} ] } ] }
参数说明
参数名 类型 说明
configs array 插件级别的自定义配置信息
config参数说明
参数名 类型 说明
name string 响应头名称。每个插件中不能添加重复名称的响应头(不区分大小写),且最多添加10条响应头。
value string 响应头的值。当“Action”为“Delete”时响应头的值不生效,可为空。
action string 响应头操作,您可以覆盖(OVERRIDE)、添加(APPEND)、删除(DELETE)、跳过(SKIP)或新增(ADD)指定的响应头。

####action值说明

 Override:覆盖 当API响应中存在指定的响应头时,使用当前响应头的值覆盖已有响应头的值。 当API响应中存在多个与指定响应头相同名称的响应头时,该操作只会按当前响应头的值返回一条响应头记录。 当API响应中不存在指定的响应头时,添加当前响应头。 Append:添加 当API响应中存在指定的响应头时,使用当前响应头的值覆盖已有响应头的值。 当API响应中存在多个与指定响应头相同名称的响应头时,会将多个响应头的值用“,”拼接后,再添加当前响应头的值。 当API响应中不存在指定的响应头时,添加当前响应头。 Delete:删除 当API响应中存在指定的响应头时,删除当前响应头。 当API响应中存在多个与指定响应头相同名称的响应头时,删除所有相同名称的响应头。 Skip:跳过 当API响应中存在指定的响应头时,跳过当前响应头。 当API响应中存在多个与指定响应头相同名称的响应头时,均不作处理直接返回。 当API响应中不存在指定的响应头时,添加当前响应头。 Add:新增 无论API响应中是否存在指定的响应头,都添加当前响应头。 

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages