赞
踩
该插件支持对后端服务返回的响应信息进行过滤,包括响应头部、响应体。过滤的响应体字段或响应头将会被移除,不会返回给客户端,从而避免敏感信息的泄漏。
若此时上游服务返回的响应体为:
- {
- "code":0,
- "data":{
- "valid":true,
- "scoreMsg":"系统判断为同一人",
- "score":0.81,
- "score2":0.81,
- "incorrect":100,
- "message":"比对成功",
- "requestId":"d022123ca86945fbb6562a8c90a416f1"
- },
- "message":"success"
- }
使用响应过滤插件过滤响应体字段 $.data.requestId
,此时配置为:
- {
- "body_filter": [
- "$.data.requestId"
- ],
- "header_filter": []
- }
返回客户端的响应体为:
- {
- "code":0,
- "data":{
- "valid":true,
- "scoreMsg":"系统判断为同一人",
- "score":0.81,
- "score2":0.81,
- "incorrect":100,
- "message":"比对成功"
- },
- "message":"success"
- }
当API绑定该插件,请求将不会发送给上游服务,直接返回插件配置的响应内容。
该插件可以适用于以下场景:
在系统升级过程中中可以使用该插件返回特定静态响应内容;
返回静态文件内容,如 HTML 页面、JS 脚本等,减少与后端服务的交互;
API 或页面地址发生迁移,通过该插件将请求重定向到新 API 或新页面;
......
该插件支持引用系统变量,引用格式为:$系统变量字段
,如 $request_uri
示例插件配置如下:
- {
- "body":"",
- "content_type":"application/json",
- "headers":[
- {
- "key":"location",
- "value":[
- "https://www.baidu.com",
- "$request_uri"
- ]
- }
- ],
- "status":302
- }
若此时请求 API:http://节点IP:端口号/user/info?name=apinto
,插件对该请求拦截后,返回的响应头部中的 Location
字段值为 https://www.baidu.com/user/info?name=apinto
,响应状态码为 302
解析客户端请求上传的文件信息,提取文件请求中的文件后缀、文件大小等信息,将其设置为系统变量,供后续插件使用。
该插件仅支持解析 POST
、PUT
、PATCH
请求方式中的文件参数,并且请求头部 Content-Type
应包含 multipart/form-data
,否则将不会解析文件参数。
插件执行成功后,将会设置以下系统变量:
系统变量可用于填写日志 Formatter 配置,使用方法请参考 Formatter 教程。
解析后端服务返回的文件信息,提取文件请求中的文件后缀、文件大小等信息,将其设置为系统变量,供后续插件使用。
文件响应时应设置 Content-Disposition
响应头部,否则将不会解析文件参数。
插件执行成功后,将会设置以下系统变量:
系统变量可用于填写日志 Formatter 配置,使用方法请参考 Formatter 教程。
修复 Nacos 服务发现删除后,Apinto连接未断开的问题。
修复计数插件 Redis 模式下死锁的问题。
修复 Prometheus 拉取 Apinto 的 Metrics 时,返回数据格式错误导致读取失败的问题。
修复额外参数 v2 插件表单参数提交失败的问题。
目前 Apinto 及其周边项目已经开源,我们希望通过 Apinto 强大的插件拓展能力,用户可像乐高积木一样根据需要自行拓展 Apinto 的插件,以满足不同的业务市场需求。
Apinto 目前属于萌芽阶段,我们希望集合广大开源爱好者的力量,与大家一起讨论方案,接受大家的批评指正,一起将产品打磨完善,做下一个端与端间的Traffic Middleware。这是一个开放和积极的项目,我们诚挚地邀请您一起参与到我们的项目开源工作中。每一个贡献都是有意义的,包括但不限于:
·查找 bugs,取得性能上的提升
·帮助完善文档,提供用户操作体验
·提交你们的 issue,让我们知道您的奇思妙想
·参与自定义插件的开发,丰富 Apinto 的能力
...
欢迎各位开源爱好者参与到 Apinto 项目中,和我们一起为开源事业贡献自己的力量!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。