async或promise all,如果第一次失败则拒绝all-3个post方法调用



已编辑。我需要调用addUser()来接收从数据库生成的userId。然后我需要用userId调用addTicket()来接收从数据库生成的ticketId。最后用userIdticketId调用addToBooks。这些都是post方法,我每次调用只需要返回它们的id,最后一个post方法将返回完整的数据。有没有一种方法可以处理这个问题,如果过程中有任何一个方法失败,我可以让所有的post方法都失败?我见过promise.all的例子,所有这些都可以做到这一点,但都是为了get方法。

您可以尝试这样的方法,下面是您的函数名称示例:

const getData = async () => {
try {
const userId = await addUser();
if(userId) {
const ticketId = await addTicket(userId);
const response = await addToBooks(userId, ticketId);
return response;
} else {
throw new Error("Error getting data")
}
} catch(error) {
console.log(error);
}
}

这不使用Promise.all,但根据我的理解,由于您给出的示例只需要userId来完成其他2个操作,我认为这应该能在中工作

相关内容

  • 没有找到相关文章

最新更新