Error handling 如何处理Apollo server中的一系列错误
我正在使用Apollo GraphQL服务器和Error handling 如何处理Apollo server中的一系列错误,error-handling,graphql,apollo,apollo-server,Error Handling,Graphql,Apollo,Apollo Server,我正在使用Apollo GraphQL服务器和类型GraphQL以及RESTDataSource数据源与第三方API通信。我的一些变体会同时进行多个REST api调用,如下所示: // Simplified mutation code for brevity const createUsers = async (users: User[], context: Context) { const { usersDataSource } = context; const apiReques
类型GraphQL
以及RESTDataSource数据源与第三方API通信。我的一些变体会同时进行多个REST api调用,如下所示:
// Simplified mutation code for brevity
const createUsers = async (users: User[], context: Context) {
const { usersDataSource } = context;
const apiRequests = users.map(user => {
return usersDataSource.createUser(user);
});
const results = await Promise.allSettled(apiRequests);
const errors = results.filter(({ status }) => status === 'rejected') as PromiseRejectedResult[];
if (errors.length > 0) {
// TODO: throw api errors as list of GraphQL errors
}
return users;
}
我想抛出所有潜在的api错误,以便客户端在出现问题时可以看到它们