AgileConfig
AgileConfig是一个基于.net core开发的轻量级配置核心。
AgileConfig秉承轻量化的特点,部署简略、配置简略、应用简略、学习简略,它只提取了必要的一些性能,并没有像Apollo那样简单且宏大。然而它的性能也曾经足够你替换webconfig,appsettings.json这些文件了。如果你不想用微服务全家桶,不想为了部署一个配置核心而须要看N篇教程跟几台服务器那么你能够试试AgileConfig :)
RESTful Api
为了更加不便的跟业务系统集成最新版的AgileConfig已反对json格局的 restful api来保护配置 。
本API入参跟出参为json格局,所以申请的时候需设置Content-Type头部为application/json 。
应用basic简略认证,设置Authorization头部为Basic base64(userName:password) 。
当操作节点、利用api的时候basic认证的userName固定设置为admin,password为以后明码 。
当操作配置api的时候basic认证的userName为利用的appid,password为利用的秘钥 。
节点
因为本零碎登录的时候没有用户名所以basic认证的时候用户名固定应用admin明码为以后设置的明码
model
{ "address": "http://localhost:5000", "remark": "this", "status": 0, // 1=online 0=offile "lastEchoTime": null }
获取所有节点
| 参数名 | 值 |
| ---- | ---- |
| url | /api/node |
| method | GET |
| status code| 200 |
| response content | [model] |
增加节点
| 参数名 | 值 |
| ---- | ---- |
| url | /api/node |
| method | POST |
| status code | 201 |
| request body | model |
| response content | 空 |
删除节点
| 参数名 | 值 |
| ---- | ---- |
| url | /api/node?address={address} |
| method | DELETE |
| status code | 204 |
| response content | 空 |
利用
因为本零碎登录的时候没有用户名所以basic认证的时候用户名固定应用admin明码为以后设置的明码
model
{ "id": "xxx", "name": "测试程序3", "secret": "", "enabled": true, //是否启用 "inheritanced": true, //是否能够继承 "inheritancedApps": null //继承的app列表 }
获取所有利用
| 参数名 | 值 |
| ---- | ---- |
| url | /api/app |
| method | GET |
| status code | 200 |
| response content | [model] |
获取繁多利用
| 参数名 | 值 |
| ---- | ---- |
| url | /api/app/{appid} |
| method | GET |
| status code | 200 |
| response content | model |
增加利用
| 参数名 | 值 |
| ---- | ---- |
| url | /api/app |
| method | POST |
| status code | 201 |
| request body | model |
| response content | 空 |
批改利用
| 参数名 | 值 |
| ---- | ---- |
| url | /api/app |
| method | PUT |
| status code | 200 |
| request body | model |
| response content | 空 |
配置
配置的basic认证用户名应用appId明码应用secret
model
{ "id": "0986e7ed33c447618f28e92360394cea", "appId": "xxx", "group": "", //组 "key": "key1", "value": "3333", "description": null, //形容 "onlineStatus": 0, //是否在线 0=期待上线 1=在线 "status": 1 // 0=删除 1=失常 }
获取所有app的配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config |
| method | GET |
| status code | 200 |
| response content | [model] |
获取繁多配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config/{id} |
| method | GET |
| status code | 200 |
| response content | model |
新建配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config |
| method | POST |
| status code | 201 |
| request body | model |
| response content | 空 |
批改配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config |
| method | PUT |
| status code | 200 |
| request body | model |
| response content | 空 |
删除配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config/{id} |
| method | DELETE |
| status code | 204 |
| response content | 空 |
上线配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config/publish/{id} |
| method | POST |
| status code | 200 |
| response content | 空 |
下线配置
| 参数名 | 值 |
| ---- | ---- |
| url | /api/config/offline/{id} |
| method | POST |
| status code | 200 |
| response content | 空 |
相干内容:
AgileConfig-如何应用AgileConfig.Client读取配置
AgileConfig-轻量级配置核心 1.1.0 公布,反对利用间配置继承
造轮子-AgileConfig基于.NetCore的一个轻量级配置核心
gihub地址:
AgileConfig
AgileConfig.Client