/**
|
* Test HTTP Server Demo
|
*/
|
import log from '../../dxmodules/dxLogger.js'
|
import server from '../../dxmodules/dxHttpServer.js'
|
import std from '../../dxmodules/dxStd.js'
|
import tokenUtil from "../common/utils/tokenUtil.js"
|
import dxCommonUtils from "../../dxmodules/dxCommonUtils.js";
|
import config from '../../dxmodules/dxConfig.js';
|
import ota from "../../dxmodules/dxOta.js";
|
import dxCommon from "../../dxmodules/dxCommon.js";
|
import fingerService from "./fingerService.js";
|
import driver from '../driver.js';
|
import bus from '../../dxmodules/dxEventBus.js';
|
import api from './api.js'
|
import weComService from './weComService.js';
|
|
const messageExpired = {
|
code: 401,
|
message: "The token has expired.",
|
data: {}
|
}
|
|
// 版本文件路径
|
const VERSION_FILE = '/etc/app/region.conf'
|
|
/**
|
* 判断是否是国际版本
|
* @returns {number} 1表示国际版本,0表示国内版本
|
*/
|
function getVersion() {
|
try {
|
let savedVersion = std.loadFile(VERSION_FILE)
|
if (savedVersion) {
|
savedVersion = savedVersion.trim()
|
}
|
// 文件有内容代表国际版本(1),无内容代表国内版本(0)
|
return savedVersion ? savedVersion : "CN"
|
} catch (e) {
|
// 如果文件不存在或读取失败,默认返回0(国内版本)
|
return "CN"
|
}
|
}
|
|
try {
|
server.serveStatic("/", "/app/code/resource/web/");
|
//登录
|
server.route("/login", function (req, res) {
|
//POST - Handle user login request
|
login(req, res);
|
});
|
//远程控制
|
server.route("/control", function (req, res) {
|
control(req, res);
|
});
|
//远程升级
|
server.route("/upgradeFirmware", function (req, res) {
|
upgradeFirmware(req, res);
|
});
|
// Upgrade package management related APIs
|
server.route("/upload", function (req, res) {
|
//POST - Upload upgrade package
|
uploadPackage(req, res);
|
}, true);
|
// server.route("/download", function (req, res) {
|
// //GET - Download upgrade package
|
// downloadPackage(req, res);
|
// });
|
//查询配置
|
server.route("/getConfig", function (req, res) {
|
getConfig(req, res);
|
});
|
// 查询配置不带token
|
server.route("/getPublicConfig", function (req, res) {
|
getPublicConfig(req, res);
|
});
|
//修改配置
|
server.route("/setConfig", function (req, res) {
|
setConfig(req, res);
|
});
|
//新增人员
|
server.route("/insertUser", function (req, res) {
|
insertUser(req, res);
|
});
|
//修改人员
|
server.route("/modifyUser", function (req, res) {
|
modifyUser(req, res);
|
});
|
//删除人员
|
server.route("/delUser", function (req, res) {
|
delUser(req, res);
|
});
|
//查询人员
|
server.route("/getUser", function (req, res) {
|
getUser(req, res);
|
});
|
//清空人员
|
server.route("/clearUser", function (req, res) {
|
clearUser(req, res);
|
});
|
|
//新增凭证insertKey
|
server.route("/insertKey", function (req, res) {
|
insertKey(req, res);
|
});
|
//修改凭证
|
server.route("/modifyKey", function (req, res) {
|
modifyKey(req, res);
|
});
|
//删除凭证
|
server.route("/delKey", function (req, res) {
|
delKey(req, res);
|
});
|
//查询凭证
|
server.route("/getKey", function (req, res) {
|
getKey(req, res);
|
});
|
//清空凭证
|
server.route("/clearKey", function (req, res) {
|
clearKey(req, res);
|
});
|
|
//新增权限
|
server.route("/insertPermission", function (req, res) {
|
insertPermission(req, res);
|
});
|
//修改权限
|
server.route("/modifyPermission", function (req, res) {
|
modifyPermission(req, res);
|
});
|
//删除权限
|
server.route("/delPermission", function (req, res) {
|
delPermission(req, res);
|
});
|
//查询权限
|
server.route("/getPermission", function (req, res) {
|
getPermission(req, res);
|
});
|
//清空权限
|
server.route("/clearPermission", function (req, res) {
|
clearPermission(req, res);
|
});
|
//清空权限
|
server.route("/getRecord", function (req, res) {
|
getRecord(req, res);
|
});
|
//清空权限
|
server.route("/getRecordMsg", function (req, res) {
|
getRecordMsg(req, res);
|
});
|
//清空权限
|
server.route("/delRecord", function (req, res) {
|
delRecord(req, res);
|
});
|
//激活云证
|
server.route("/eidActive", function (req, res) {
|
eidActive(req, res);
|
});
|
//新增密钥
|
server.route("/insertSecurity", function (req, res) {
|
insertSecurity(req, res);
|
});
|
//查询密钥
|
server.route("/getSecurity", function (req, res) {
|
getSecurity(req, res);
|
});
|
//删除密钥
|
server.route("/delSecurity", function (req, res) {
|
delSecurity(req, res);
|
});
|
//清空密钥
|
server.route("/clearSecurity", function (req, res) {
|
clearSecurity(req, res);
|
});
|
|
//获取指纹特征
|
server.route("/getFingerChar", function (req, res) {
|
getFingerChar(req, res);
|
});
|
//中断指纹采集
|
server.route("/interruptFinger", function (req, res) {
|
interruptFinger(req, res);
|
});
|
// Start server and listen on port
|
server.listen(8080);
|
} catch (e) {
|
log.error(e);
|
}
|
|
// Set server event loop
|
std.setInterval(() => {
|
server.loop();
|
}, 10);
|
|
function getPublicConfig(req, res) {
|
let result = { code: 200, message: "", data: {
|
language: config.get("base.language"),
|
model: config.get("sys.model"),
|
version: getVersion(),
|
isWeCom: weComService.isWeCom() === true ? true : false,
|
finger: driver.device.finger
|
} }
|
try {
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
} catch (error) {
|
log.error(error)
|
}
|
}
|
|
//登录
|
function login(req, res) {
|
let body = req.body;
|
let result = { code: 400, message: "", data: {} }
|
if (body) {
|
body = JSON.parse(body);
|
log.info(body);
|
if (body.userPassword === config.get("base.password")) {
|
result.code = 200;
|
result.message = "登录成功";
|
result.data.accessToken = tokenUtil.generateToken(body.userPassword + config.get("sys.sn"));
|
} else {
|
result.code = 403
|
result.message = "用户名或密码错误"
|
}
|
}
|
try {
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
} catch (error) {
|
log.error(error)
|
}
|
}
|
//修改背景
|
function setBackground(req, res) {
|
let result = { code: 400, message: "", data: {} }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body);
|
log.info(body);
|
try {
|
let res = api.setBackground(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
//远程控制
|
function control(req, res) {
|
let result = { code: 400, message: "", data: {} }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body);
|
log.info(body);
|
try {
|
let res = api.control(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//获取配置
|
function getConfig(req, res) {
|
let result = { code: 400, message: "", data: {} }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.getConfig(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//修改配置
|
function setConfig(req, res) {
|
let result = { code: 400, message: "", data: {} }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.setConfig(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
log.info(error)
|
log.info("error:" + error.message)
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
// 固件升级
|
function upgradeFirmware(req, res) {
|
let result = { code: 400, message: "", data: {} }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.upgradeFirmware(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
/**
|
* Upload upgrade package
|
* @param {Object} req - Request object
|
* @param {Object} res - Response object
|
*/
|
function uploadPackage(req, res) {
|
let result = {
|
code: 400,
|
message: "upload package failed",
|
data: {}
|
}
|
if (verifyToken(req)) {
|
try {
|
// Save uploaded file
|
let res = req.saveMultipartFile("/upgrades.zip");
|
log.info('saveMultipartFile', res);
|
if (res) {
|
if (verifyMD5('/upgrades.zip', res.md5)) {
|
result.code = 200;
|
result.message = "upload package success";
|
ota.reboot()
|
}
|
}
|
} catch (e) {
|
log.error(e);
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
/**
|
* Download upgrade package
|
* @param {Object} req - Request object
|
* @param {Object} res - Response object
|
*/
|
function downloadPackage(req, res) {
|
try {
|
log.info('start download package');
|
// Send file to client
|
res.sendFile("/app/code/src/package.zip");
|
log.info('download package success');
|
} catch (e) {
|
log.error(e);
|
}
|
}
|
|
//新增人员
|
function insertUser(req, res) {
|
let result = { code: 400, message: "", data: {}, }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.insertUser(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//修改人员
|
function modifyUser(req, res) {
|
let result = { code: 400, message: "", data: {}, }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.modifyUser(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//删除人员
|
function delUser(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.delUser(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//查询人员
|
function getUser(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.getUser(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.data = res
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//清空人员
|
function clearUser(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.clearUser(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//新增凭证insertKey
|
function insertKey(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.insertKey(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//修改凭证
|
function modifyKey(req, res) {
|
let result = { code: 400, message: "", data: {}, }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.modifyKey(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//删除凭证
|
function delKey(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.delKey(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//查询凭证
|
function getKey(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.getKey(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//清空凭证
|
function clearKey(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body);
|
log.info(body);
|
try {
|
let res = api.clearKey(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//新增权限
|
function insertPermission(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.insertPermission(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//修改凭证
|
function modifyPermission(req, res) {
|
let result = { code: 400, message: "", data: {}, }
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.modifyPermission(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//删除权限
|
function delPermission(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
try {
|
let res = api.delPermission(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//查询权限
|
function getPermission(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.getPermission(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//清空权限
|
function clearPermission(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body);
|
log.info(body);
|
try {
|
let res = api.clearPermission(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//获取通行记录图片
|
function getRecordMsg(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = dxCommonUtils.fs.fileToBase64(body)
|
result.data = res
|
result.code = 200
|
} catch (error) {
|
log.info("获取通行图片BASE64失败")
|
result.message = "Failed to obtain the BASE64 encoding of the access image"
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//获取通行记录
|
function getRecord(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.getRecords(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//删除通行记录
|
function delRecord(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
try {
|
let res = api.delRecords(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
// 获取云证
|
function eidActive(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.eidActive(body)
|
if (typeof res == 'string') {
|
result.message = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//新增密钥
|
function insertSecurity(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
log.info(body);
|
try {
|
let res = api.insertSecurity(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//删除密钥
|
function delSecurity(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
try {
|
let res = api.delSecurity(body)
|
if (Array.isArray(res)) {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//查询密钥
|
function getSecurity(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
try {
|
let res = api.getSecurity(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
result.data = res
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
//清空密钥
|
function clearSecurity(req, res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body);
|
try {
|
let res = api.clearSecurity(body)
|
if (typeof res == 'string') {
|
result.data = res
|
} else {
|
result.code = 200
|
}
|
} catch (error) {
|
result.message = error.message
|
}
|
} else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
// 获取指纹特征
|
function getFingerChar(req,res) {
|
let result = {
|
code: 400,
|
message: "",
|
data: {},
|
}
|
if (verifyToken(req)) {
|
let body = req.body;
|
body = JSON.parse(body).data;
|
try {
|
let ret = fingerService.getFingerChar(body.userId)
|
result.code = 200
|
result.data = {ret: ret}
|
} catch (error) {
|
result.message = error.message
|
}
|
}else {
|
result = messageExpired
|
}
|
res.send(JSON.stringify(result), { "Content-Type": "application/json" });
|
}
|
|
function verifyToken(req) {
|
let headers = req.headers;
|
if (!headers) {
|
return false;
|
}
|
// Verify Bearer Token
|
//Authorization Bearer 1234567890
|
if (headers['Authorization']) {
|
if (tokenUtil.verifyToken(headers['Authorization'], 1000 * 60 * 60 * 24)) {
|
return true
|
}
|
}
|
return false;
|
}
|
|
function verifyMD5(filePath, expectedMD5) {
|
const hash = dxCommon.md5HashFile(filePath)
|
const actualMD5 = hash.map(v => v.toString(16).padStart(2, '0')).join('')
|
return actualMD5 === expectedMD5
|
}
|