add: 添加接口文档定义

This commit is contained in:
SunnyQjm committed 2020-05-30 22:03:19 +08:00
1 parent 58c5370074
commit 41c0e99dc3
2 files changed
+99 -3

No files matched your search

+98 -2
View File
@@ -19,7 +19,7 @@
cmake .
make
```
## 使用
- **用命令行安装证书到redis**
@@ -30,4 +30,100 @@
- **用命令行从redis卸载证书**
```bash
./uninstallCertificate -f <证书文件路径>
```
```
## 通信接口
- **证书下发和更新**
1. 可以通过这个接口将用户的证书安装的MIR上,以便用户签名的Interest和Data在流经MIR的时候被正确验证;
2. 同时支持设置证书的有效期,在有效期结束之后,证书会被自动移除。
```json
// 请求
{
"code": 1,
"data": {
// 字符串类型
"certStr": "证书的base64编码字符串",
// long型整数,表示整数有效期,单位为ms,如果期望证书不过期,一直可用,可以传递-1
"lifetime": 1000,
// 是否强制更新 => 指定强制更新,则证书已存在的情况下,会覆盖同名的旧的证书记录
"forceUpdate": false
}
}
// 回复
{
"code": 0, // 0 => 安装成功, -1 => 证书格式错误, -2 => 存在同名证书,且未覆盖
"errMsg": "", // 如果有错误展示错误描述,没有错误则为空字符串
}
```
- **证书撤销**
1. 通过这个接口,可以撤销MIR上正在生效的某个证书,撤销之后,对应秘钥签名的Interest和Data将无法通过MIR的验证。
```json
// 请求
{
"code": 2,
"data": {
// 字符串类型
"certStr": "证书的base64编码字符串"
}
}
// 回复
{
"code": 0, // 0 => 撤销成功, -1 => 证书格式错误, -2 => 没有对应的条目
"errMsg": "" // 如果有错误展示错误描述,没有错误则为空字符串
}
```
- **查询证书有效期**
1. 通过这个接口,可以查询指定证书在MIR上的有效期。
```json
// 请求
{
"code": 3,
"data": {
// 字符串类型
"certStr": "证书的base64编码字符串"
}
}
// 回复
{
"code": 0, // 0 => 成功,-2 => 没有对应的条目
"errMsg": "", // 如果有错误展示错误描述,没有错误则为空字符串
"data": 5000 // >=0的值 => 表示当前剩余存活期, -1 => 表示没有设置存活期,持久保存
}
```
- **查询证书**
1. 这个接口可以判断指定的证书在MIR上是否已经安装,并且是有效的;
```json
// 请求
{
"code": 4,
"data": {
// 字符串类型
"certStr": "证书的base64编码字符串"
}
}
// 回复
{
"code": 0, // 0 => 存在,-1 => 没有对应的条目
"errMsg": "" // 如果有错误展示错误描述,没有错误则为空字符串
}
```
+1 -1
View File
@@ -99,7 +99,7 @@ int RedisUtil::setLifeTime(const std::string &key, long lifetime) {
* @param key
* @return
* -2 => 返回-2表示key对应的条目不存在(可能是本来就没有这个条目,或者本来有一个条目,但是因为设置了存活期,其存活期已到,被移除了)
* -1 => 返回-1表示key对应的条目存在,但是没有设置过存活期,是持久保存的
* -1 => 返回-1表示key对应的条目存在,但是没有设置过存活期,是持久保存的
* >= 0 => 返回大于等于0的值表示key对应的条目存在,且其剩余的存活时间为返回的值,单位为毫秒
*/
long RedisUtil::getRemainingTime(const std::string &key) {