小程序nodejs express后端解码encryptedData用await没有作用?
app.post('/testId', async function(req, res, next) {
var result = await checkDecode(req.body.unionId, req.body.iv, req.body.encryptedData);
console.log('aaa');
console.log(result);
if (result) {
res.send({
result: true
});
} else {
res.send({
result: false
});
}
});
async function checkDecode(unionId, iv, encryptedData) {
var sessionKey = '';
const pool = mysql.createConnection(config);
pool.connect();
await pool.query("select * from sessionKey where openId=?", [unionId], async function (err, rows, fields) {
sessionKey = rows[0].sessionKey;
pool.end();
var pc = new WXBizDataCrypt(appId, sessionKey);
var data = await pc.decryptData(encryptedData, iv);
console.log(((data.openId === unionId) && (data.watermark.appid===appId)));
return await ((data.openId === unionId) && (data.watermark.appid===appId));
});
};
发出 POST /testId 请求,控制台先打印'aaa', console.log的result为undefined,然后再打印checkDecode里的console.log为true
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你的 checkDecode 没有 return 任何值