1 Star 4 Fork 0

jnxmjs/crow-frame

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
token.cpp 867 Bytes
一键复制 编辑 原始数据 按行查看 历史
jnxmjs 提交于 2020-10-10 17:10 . init upload
#include "token.h"
#include "error_code.h"
int checkToken(const crow::request &req, crow::response &res, Poco::JSON::Object &token) {
auto auth = req.get_header_value("Authorization");
if (auth.length() == 0) {
throw CError(5000);
res.write("No Authorization");
return -1;
}
std::vector<std::string> vs;
splitString(auth, vs, " ");
if (vs.size()!=2) {
throw CError(5000);
res.write("Authorization Field Error");
return -1;
}
if (vs[0].compare("Bearer")!=0) {
throw CError(5000);
res.write("Authorization Field Error");
return -1;
}
try {
Poco::JWT::Signer signer(TOKEN_KEY);
token = signer.verify(vs[1]).payload();
} catch (...) {
throw CError(5000);
res.write("Token Error");
return -1;
}
return 0;
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/airlovelq/crow-frame.git
git@gitee.com:airlovelq/crow-frame.git
airlovelq
crow-frame
crow-frame
master

搜索帮助