本地模式

  • 统一返回结果:

  • 统一请求前缀:localhost:9195/shenyu

  • 统一请求头:localKey: 123456

新增或者更新插件

请求方式

POST

请求路径

/plugin/saveOrUpdate

请求参数

PluginData

名称类型是否必需默认值描述
idStringFalse插件ID
nameStringTrue插件名称
configStringFalse插件配置(Json格式)
roleStringFalse插件角色
enabledBooleanFalse是否开启
请求示例

POST body

  1. {"id":3,"name":"divide","enabled":"true"}

清空所有数据

清空所有插件,选择器,规则数据

请求方式

GET

请求路径

/cleanAll

清空插件数据

清空单个插件,选择器,规则数据

请求方式

GET

请求路径

/cleanPlugin?name = xxxx

Request参数
名称类型是否必需默认值描述
nameStringtrue插件名称

删除插件

删除单个插件(不包含,插件里面的选择器与规则)

请求方式

GET

请求路径

/plugin/delete?name = xxxx

Request参数
名称类型是否必需默认值描述
nameStringtrue插件名称

删除所有插件

删除所有插件(不包含,插件里面的选择器与规则)

请求方式

GET

请求路径

/plugin/deleteAll

根据名称获取插件数据

请求方式

GET

请求路径

/plugin/findByName?name=xxxx

Request参数
名称类型是否必需默认值描述
nameStringtrue插件名称

新增或更新选择器

请求方式

POST

请求路径

/plugin/selector/saveOrUpdate

请求参数
名称类型是否必需默认值描述
SelectorDataSelectorDataTrue选择器对象(Body里面传Json对象)

SelectorData

名称类型是否必需默认值描述
idStringFalse选择器ID
pluginNameStringTrue插件名称
nameStringFalse选择器名称(不填则默认生成 plugin:selector+随机数字)
matchModeIntegerFalse匹配模式(0:and;1:or),不填默认生成 And模式
typeIntegerFalse流量类型0:全流量;1:自定义流量)不填默认生成全流量
sortIntegerFalse排序 ,不填默认生成 10
enabledBooleanFalse是否开启,不填默认生成 true
loggedBooleanFalse是否打印日志,不填默认生成为false
handleStringFalse选择器处理(Json对象,根据每个插件不同,传的对象不同)
conditionListConditionFalse条件集合,自定义流量需要传,全流量不用传(Json List对象)

Condition

名称类型是否必需默认值描述
paramTypeStringTrue参数类型(post,uri,query,host,header,cookie,req_method,domain)
operatorStringTrue匹配方式(match,=,regex,>,<,contains,SpEL,Groovy,TimeBefore,TimeAfter)
paramNameStringFalse参数名称(uri 参数类型时候,可以不传)
paramValueIntegerFalse匹配值
请求示例

POST body

返回数据

选择器ID

  1. xxxxx

新增选择器与规则

新增一条选择器与多条规则

请求方式

POST

请求路径

/plugin/selectorAndRules

请求参数
名称类型是否必需默认值描述
SelectorRulesDataSelectorRulesDataTrue选择器规则对象(Body里面传Json对象)

SelectorRulesData

RuleLocalData

名称类型是否必需默认值描述
ruleNameStringFalse规则名称
ruleHandlerStringTrue规则处理(不同的插件传不同的值)
matchModeIntegerFalse匹配模式(0:and;1:or)
conditionListTrue规则条件集合(Json List对象)

ConditionData

名称类型是否必需默认值描述
paramTypeStringTrue参数类型(post,uri,query,host,header,cookie,req_method,domain)
operatorStringTrue匹配方式(match,=,regex,>,<,contains,SpEL,Groovy,TimeBefore,TimeAfter)
paramNameStringFalse参数名称(uri 参数类型时候,可以不传)
paramValueIntegerFalse匹配值
请求示例

POST body

删除选择器

根据选择器id与插件名称删除选择器

请求方式

GET

请求路径

/plugin/selector/delete?pluginName=xxxx&&id=xxxx

Request参数
名称类型是否必需默认值描述
pluginNameStringtrue插件名称
idStringtrue选择器id

获取插件下的所有选择器

根据插件名称获取所有选择器

请求方式

GET

请求路径

/plugin/selector/findList?pluginName=xxxx

Request参数
名称类型是否必需默认值描述
pluginNameStringtrue插件名称

新增或者更新规则数据

请求方式

POST

请求路径

/plugin/rule/saveOrUpdate

请求参数
名称类型是否必需默认值描述
RuleDataRuleDataTrue规则对象(Body里面传Json对象)

RuleData

名称类型是否必需默认值描述
idStringFalse规则ID
pluginNameStringTrue插件名称
nameStringFalse规则名称(不填则默认生成 plugin:rule+随机数字)
selectorIdStringTrue选择器ID(不填则默认生成 plugin:rule+随机数字)
matchModeIntegerFalse匹配模式(0:and;1:or),不填默认生成 And模式
sortIntegerFalse排序 ,不填默认生成 10
enabledBooleanFalse是否开启,不填默认生成 true
loggedBooleanFalse是否打印日志,不填默认生成为false
handleStringFalse规则处理(Json对象,根据每个插件不同,传的对象不同)
conditionListConditionDataFalse条件集合(Json List对象)
名称类型是否必需默认值描述
paramTypeStringTrue参数类型(post,uri,query,host,header,cookie,req_method,domain)
operatorStringTrue匹配方式(match,=,regex,>,<,contains,SpEL,Groovy,TimeBefore,TimeAfter)
paramNameStringFalse参数名称(uri 参数类型时候,可以不传)
paramValueIntegerFalse匹配值
请求示例

POST body

  1. "pluginName": "divide",
  2. "selectorId": 123456,
  3. "handle": "{\"loadBalance\":\"random\"}",
  4. "conditionDataList": [{
  5. "operator": "=",
  6. "paramValue": "/test"
  7. }]
  8. }
返回数据

规则ID

删除规则

根据选择器id与规则id删除规则

请求方式

GET

请求路径

/plugin/rule/delete?selectorId=xxxx&&id=xxxx

Request参数
名称类型是否必需默认值描述
selectorIdStringtrue选择器ID
idStringtrue规则ID

获取规则集合

根据选择器ID获取所有规则

请求方式

GET

请求路径

/plugin/rule/findList?selectorId=xxxx

Request参数

新增或者更新元数据

新增或者更新元数据

请求方式

POST

请求路径

/meta/saveOrUpdate

请求参数
名称类型是否必需默认值描述
MetaDataTrue元数据对象(Body里面传Json对象)

MetaData

名称类型是否必需默认值描述
idStringFalse元数据ID
appNameStringTrue应用名称
contextPathStringTruecontextPath
pathStringTrue请求路径
rpcTypeStringTruerpc类型(dubbo,sofa,tars,springCloud,motan,grpc)
serviceNameStringTrue接口名称
methodNameStringTrue方法名称
parameterTypesStringTrue参数类型
rpcExtStringFalserpc扩展参数(json对象)
enabledBooleanFalse是否开启

删除元数据

删除元数据

请求方式

GET

请求路径

/meta/delete?rpcType=xxxx&&path=xxx

Request参数
名称类型是否必需默认值描述
rpcTypeStringtruerpc类型(dubbo,sofa,tars,springCloud,motan,grpc)
pathStringtrue路径

新增或者更新签名数据

请求方式

POST

请求路径

/auth/saveOrUpdate

请求参数
名称类型是否必需默认值描述
AppAuthDataAppAuthDataTrue签名对象(Body里面传Json对象)

AppAuthData

名称类型是否必需默认值描述
appKeyStringTrueapp key
appSecretStringTrueapp secret
enabledBooleanFalse是否开启
openBooleanFalse是否是开放平台
paramDataListAuthParamDatafalse参数集合,open为true时候需要传(Json list对象)
AuthPathDatafalse路径集合,open为true时候需要传(Json list对象)

AuthParamData

名称类型是否必需默认值描述
appNameStringTrue应用名称
appParamStringTrue应用参数

AuthPathData

名称类型是否必需默认值描述
appNameStringTrue应用名称
pathStringTrue路径
enabledBooleanFalse是否开启

删除

删除签名数据

请求方式

GET

请求路径
Request参数
名称类型是否必需默认值描述
appKeyStringtrueapp key