【发布时间】:2021-07-29 21:59:29
【问题描述】:
通过 getpost 函数运行 /kakao/getpost 路由器。这时候通过authenticateToken来检查token。如果token过期,执行了if(err){}条件语句,/getpost路由器再次收到err,执行if(err)条件语句,我想收到前面的错误信息作为数据。比如 console.log(data)
但如果我使用我的代码
发生了这个错误
可能的未处理承诺拒绝
如何修复我的代码?
这是 ym 代码
const getpost = async () => {
const {data} = await axios.post(
'/kakao/getpost',
{refreshToken: refreshToken, kakaoid: me.id},
{
headers: {Authorization: `Bearer ${kakaoaccesstoken}`},
},
);
console.log('data", data)
};
exports.authenticateToken = (req, res, next) => {
const authHeader =
req.headers["authorization"];
const token = authHeader && authHeader.split(" ")[1];
if (token == null) return res.sendStatus(401);
jwt.verify(token, process.env.ACCESS_TOKEN_SECRET, (err, user) => {
console.log(err);
if (err) {
console.log("err:::::::::::", err);
return res.sendStatus(403);
// next(err);
}
req.user = user;
next();
});
};
router.post("/getpost", authenticateToken, async
(req, res, next) => {
try {
console.log("getpost");
if (err) {
return res.status(403).json("err");
}
} catch (error) {
next(error); // status 500
}
});
【问题讨论】:
标签: java node.js reactjs react-native jwt