update: 更新通信接口

This commit is contained in:
SunnyQjm committed 2020-06-11 15:54:51 +08:00
1 parent 46718f0601
commit b62f10e02b
7 files changed
+73 -32

No files matched your search

+20 -13
View File
@@ -52,13 +52,15 @@ void Server::onInterest(const InterestFilter &filter, const Interest &interest)
RemoveCertificateRequestMessage removeCertificateRequestMessage;
GetLifetimeRequestMessage getLifetimeRequestMessage;
ExistsCertificateRequestMessage existsCertificateRequestMessage;
switch (jsonCppUtil.getInt("code")) {
switch (jsonCppUtil.getInt("Code")) {
case BaseRequestMessage::ADD_OR_UPDATE_CERTIFICATE: // 下发或更新证书
addOrUpdateCertificateRequestMessage.parse(params);
root["code"] = ndnCertificationUtil.installCert(addOrUpdateCertificateRequestMessage.getCertStr(),
addOrUpdateCertificateRequestMessage.getLifetime(),
addOrUpdateCertificateRequestMessage.isForceUpdate());
root["errMsg"] = addOrUpdateCertificateRequestMessage.getErrorMessage(root["code"].asInt());
root["Prefix"] = addOrUpdateCertificateRequestMessage.getPrefix();
root["Code"] = addOrUpdateCertificateRequestMessage.getCode();
root["StatusCode"] = ndnCertificationUtil.installCert(addOrUpdateCertificateRequestMessage.getCertStr(),
addOrUpdateCertificateRequestMessage.getLifetime(),
addOrUpdateCertificateRequestMessage.isForceUpdate());
root["ErrMsg"] = addOrUpdateCertificateRequestMessage.getErrorMessage(root["StatusCode"].asInt());
break;
case BaseRequestMessage::REMOVE_CERTIFICATE: // 撤销证书
removeCertificateRequestMessage.parse(params);
@@ -69,30 +71,35 @@ void Server::onInterest(const InterestFilter &filter, const Interest &interest)
} else {
resCode = resCode;
}
root["code"] = resCode;
root["errMsg"] = removeCertificateRequestMessage.getErrorMessage(resCode);
root["Prefix"] = removeCertificateRequestMessage.getPrefix();
root["Code"] = removeCertificateRequestMessage.getCode();
root["StatusCode"] = resCode;
root["ErrMsg"] = removeCertificateRequestMessage.getErrorMessage(resCode);
break;
case BaseRequestMessage::GET_CERTIFICATE_LIFETIME: // 获取证书的生存期
getLifetimeRequestMessage.parse(params);
longResult = ndnCertificationUtil.getCertLifetime(getLifetimeRequestMessage.getCertStr());
std::cout << "longResult: " << longResult << std::endl;
root["data"] = (long long int) longResult;
root["Data"] = (long long int) longResult;
if (longResult >= 0) {
resCode = 0;
} else {
resCode = (int) longResult;
}
root["code"] = resCode;
root["errMsg"] = getLifetimeRequestMessage.getErrorMessage(resCode);
root["Prefix"] = getLifetimeRequestMessage.getPrefix();
root["Code"] = getLifetimeRequestMessage.getCode();
root["StatusCode"] = resCode;
root["ErrMsg"] = getLifetimeRequestMessage.getErrorMessage(resCode);
break;
case BaseRequestMessage::EXISTS_CERTIFICATE: // 证书是否存在
existsCertificateRequestMessage.parse(params);
if (ndnCertificationUtil.exists(existsCertificateRequestMessage.getCertStr())) {
root["code"] = 0;
root["StatusCode"] = 0;
} else {
root["code"] = -1;
root["StatusCode"] = -1;
}
root["errMsg"] = existsCertificateRequestMessage.getErrorMessage(root["code"].asInt());
root["Code"] = existsCertificateRequestMessage.getCode();
root["ErrMsg"] = existsCertificateRequestMessage.getErrorMessage(root["StatusCode"].asInt());
break;
default:
std::cerr << "未能处理的请求:" << endl << params << endl;
+11 -4
View File
@@ -11,6 +11,7 @@
class AddOrUpdateCertificateRequestMessage : public BaseRequestMessage {
public:
struct AddOrUpdateCertificateRequestData {
std::string prefix = ""; // 用户前缀
std::string certStr = "";
long lifetime = -1;
bool forceUpdate = false;
@@ -34,10 +35,12 @@ public:
Json::Value root;
reader.parse(jsonStr, root);
this->code = code;
addOrUpdateCertificateRequestData.certStr = root["data"]["certStr"].asString();
addOrUpdateCertificateRequestData.lifetime = root["data"]["lifetime"].asUInt64();
addOrUpdateCertificateRequestData.forceUpdate = root["data"]["forceUpdate"].asBool();
this->code = root["Code"].asInt();
this->timestamp = root["Timestamp"].asString();
addOrUpdateCertificateRequestData.prefix = root["Data"]["Prefix"].asString();
addOrUpdateCertificateRequestData.certStr = root["Data"]["CertStr"].asString();
addOrUpdateCertificateRequestData.lifetime = root["Data"]["Lifetime"].asUInt64();
addOrUpdateCertificateRequestData.forceUpdate = root["Data"]["ForceUpdate"].asBool();
return this;
}
@@ -54,6 +57,10 @@ public:
return addOrUpdateCertificateRequestData.forceUpdate;
}
std::string getPrefix() const {
return addOrUpdateCertificateRequestData.prefix;
}
private:
AddOrUpdateCertificateRequestData addOrUpdateCertificateRequestData;
};
+5
View File
@@ -21,6 +21,10 @@ public:
return code;
}
std::string getTimestamp() const {
return timestamp;
}
virtual BaseRequestMessage *parse(const std::string &jsonStr) {};
virtual std::string getErrorMessage(int responseCode) {};
@@ -57,6 +61,7 @@ public:
protected:
int code{0};
std::string timestamp = "";
};
const int BaseRequestMessage::ADD_OR_UPDATE_CERTIFICATE = 1;
+10 -3
View File
@@ -7,9 +7,10 @@
#include "BaseRequestMessage.h"
class ExistsCertificateRequestMessage : BaseRequestMessage {
class ExistsCertificateRequestMessage : public BaseRequestMessage {
public:
struct ExistsCertificateRequestData {
std::string prefix = ""; // 用户前缀
std::string certStr = "";
};
@@ -29,8 +30,10 @@ public:
Json::Value root;
reader.parse(jsonStr, root);
this->code = code;
existsCertificateRequestData.certStr = root["data"]["certStr"].asString();
this->code = root["Code"].asInt();
this->timestamp = root["Timestamp"].asString();
existsCertificateRequestData.prefix = root["Data"]["Prefix"].asString();
existsCertificateRequestData.certStr = root["Data"]["CertStr"].asString();
return this;
}
@@ -38,6 +41,10 @@ public:
return existsCertificateRequestData.certStr;
}
std::string getPrefix() const {
return existsCertificateRequestData.prefix;
}
private:
ExistsCertificateRequestData existsCertificateRequestData;
};
+10 -3
View File
@@ -7,9 +7,10 @@
#include "BaseRequestMessage.h"
class GetLifetimeRequestMessage : BaseRequestMessage {
class GetLifetimeRequestMessage : public BaseRequestMessage {
public:
struct GetLifetimeRequestData {
std::string prefix = ""; // 用户前缀
std::string certStr = "";
};
@@ -32,8 +33,10 @@ public:
Json::Value root;
reader.parse(jsonStr, root);
this->code = code;
getLifetimeRequestData.certStr = root["data"]["certStr"].asString();
this->code = root["Code"].asInt();
this->timestamp = root["Timestamp"].asString();
getLifetimeRequestData.prefix = root["Data"]["Prefix"].asString();
getLifetimeRequestData.certStr = root["Data"]["CertStr"].asString();
return this;
}
@@ -41,6 +44,10 @@ public:
return getLifetimeRequestData.certStr;
}
std::string getPrefix() const {
return getLifetimeRequestData.prefix;
}
private:
GetLifetimeRequestData getLifetimeRequestData;
};
+9 -3
View File
@@ -7,9 +7,10 @@
#include "BaseRequestMessage.h"
class RemoveCertificateRequestMessage : BaseRequestMessage {
class RemoveCertificateRequestMessage : public BaseRequestMessage {
public:
struct RemoveCertificateRequestData {
std::string prefix = ""; // 用户前缀
std::string certStr = "";
};
@@ -31,8 +32,10 @@ public:
Json::Value root;
reader.parse(jsonStr, root);
this->code = code;
removeCertificateRequestData.certStr = root["data"]["certStr"].asString();
this->code = root["Code"].asInt();
this->timestamp = root["Timestamp"].asString();
removeCertificateRequestData.prefix = root["Data"]["Prefix"].asString();
removeCertificateRequestData.certStr = root["Data"]["CertStr"].asString();
return this;
}
@@ -40,6 +43,9 @@ public:
return removeCertificateRequestData.certStr;
}
std::string getPrefix() const {
return removeCertificateRequestData.prefix;
}
private:
RemoveCertificateRequestData removeCertificateRequestData;
};
@@ -1,8 +1,10 @@
{
"code":1,
"data":{
"certStr":"Bv0Cxwc1CANuZG4IA2VkdQgFcGt1c3oIAk9BCANLRVkICGPbD1xognqbCARzZWxm\nCAn9AAABcTrEzzwUCRgBAhkEADbugBX9ASYwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQC5iB3MjTnzWUBlUryln80o9Y9WifC3KdF5xh9SazM90kVlTOqz\noLGfFvT6MIoFmMHyphU8D6HLuWuAK3hhcaamHi0ddiDYt7nNjvhkoZpzOQMAiXyv\n0P5LkbWzO1IK53MM1xga029rQJjPrRikoQJDe7K9NAzklRj9WBL6eYtevs6FKUhf\nhmoDgPLsiW5auhefv7cXwLfqee3BwaeugBw/77Z5/0/6X9bY9YXwFkcWl0JpGfGm\nXqZKD/V4TcK0/mNd6ho73aL3AdRnportgoo8RLGYQeG3VVXj8OAlOlJ/Ekh+Xel7\nC9sUQn2OuRw7bib52hode0WbTyxiaTsHlJX3AgMBAAEWVRsBARwmByQIA25kbggD\nZWR1CAVwa3VzeggCT0EIA0tFWQgIY9sPXGiCepv9AP0m/QD+DzE5NzAwMTAxVDAw\nMDAwMP0A/w8yMDQwMDMyOFQxMjAxNDgX/QEATFdz4SS3vHcA9twisNeqTi+3grxb\nisVJvH2LOOUxZhEP1H1NAP5EihLz91RqGnlcwl94svSNkZysuDm/0WI3bXtPTso7\nb+pS758CqMJ7SbvuAGFk9Q30it/Z3A2wUV2qxZbfp46u7JUByu2xU/0i3kzvWr4z\nw5EtWFoatNVsZDElKVsFSxo4k8Z1df3gXAWwF6ZIE12o7SM7O8EWtbiL1QydB30k\nA8zB9mJ9P//pAojI+u57WyCdRwa316cu2Q9ucFf22lPhtJxXzV8yf/sYW3bJeSPW\nD20fxxX3KrPNwSTI8oPl4ajvI4fexy4LXJ4F9GJ8VGBmc+A9HftxfHXVRw==",
"lifetime":50000,
"forceUpdate":false
}
"Code":1,
"Data":{
"Prefix": "/test",
"CertStr":"Bv0Cxwc1CANuZG4IA2VkdQgFcGt1c3oIAk9BCANLRVkICGPbD1xognqbCARzZWxm\nCAn9AAABcTrEzzwUCRgBAhkEADbugBX9ASYwggEiMA0GCSqGSIb3DQEBAQUAA4IB\nDwAwggEKAoIBAQC5iB3MjTnzWUBlUryln80o9Y9WifC3KdF5xh9SazM90kVlTOqz\noLGfFvT6MIoFmMHyphU8D6HLuWuAK3hhcaamHi0ddiDYt7nNjvhkoZpzOQMAiXyv\n0P5LkbWzO1IK53MM1xga029rQJjPrRikoQJDe7K9NAzklRj9WBL6eYtevs6FKUhf\nhmoDgPLsiW5auhefv7cXwLfqee3BwaeugBw/77Z5/0/6X9bY9YXwFkcWl0JpGfGm\nXqZKD/V4TcK0/mNd6ho73aL3AdRnportgoo8RLGYQeG3VVXj8OAlOlJ/Ekh+Xel7\nC9sUQn2OuRw7bib52hode0WbTyxiaTsHlJX3AgMBAAEWVRsBARwmByQIA25kbggD\nZWR1CAVwa3VzeggCT0EIA0tFWQgIY9sPXGiCepv9AP0m/QD+DzE5NzAwMTAxVDAw\nMDAwMP0A/w8yMDQwMDMyOFQxMjAxNDgX/QEATFdz4SS3vHcA9twisNeqTi+3grxb\nisVJvH2LOOUxZhEP1H1NAP5EihLz91RqGnlcwl94svSNkZysuDm/0WI3bXtPTso7\nb+pS758CqMJ7SbvuAGFk9Q30it/Z3A2wUV2qxZbfp46u7JUByu2xU/0i3kzvWr4z\nw5EtWFoatNVsZDElKVsFSxo4k8Z1df3gXAWwF6ZIE12o7SM7O8EWtbiL1QydB30k\nA8zB9mJ9P//pAojI+u57WyCdRwa316cu2Q9ucFf22lPhtJxXzV8yf/sYW3bJeSPW\nD20fxxX3KrPNwSTI8oPl4ajvI4fexy4LXJ4F9GJ8VGBmc+A9HftxfHXVRw==",
"Lifetime":50000,
"ForceUpdate":false
},
"Timestamp": ""
}