gpt4 book ai didi

javascript - 我如何处理 redis 和 bluebird 的错误?

转载 作者:可可西里 更新时间:2023-11-01 11:23:44 25 4
gpt4 key购买 nike

我一直面临着 redis 和 async await 的问题。

我有带回调的旧 redis.get:

redis.get(token, async (error, result) => {
if (error) {
return res.status(404).json({ msg: 'Confirm token is invalid.' });
}

if (result === null) {
return res.status(400).json({ msg: 'Confirm token is expired.' });
}
})

但我会想把他重构为 async/await

bluebird.promisifyAll(redis.RedisClient.prototype);
bluebird.promisifyAll(redis.Multi.prototype);
const result = async redis.asyncGet(token)

我成功得到了结果,但是我怎么得到错误呢?

谢谢

最佳答案

有了您的代码,您只需要在 try/catch 语句中使用 async/await 语法包围 redis 调用:

bluebird.promisifyAll(redis.RedisClient.prototype);
bluebird.promisifyAll(redis.Multi.prototype);

try {
const result = redis.get(token);
} catch (e) {
return res.status(400).send({ msg: 'Confirm token is expired.' })
}

关于javascript - 我如何处理 redis 和 bluebird 的错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55227897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com