Node.js 如何从阿波罗服务器发送错误消息
这是我的密码 在apollo客户机中,我使用useMutation 阿波罗客户Node.js 如何从阿波罗服务器发送错误消息,node.js,graphql,react-apollo,apollo-client,apollo-server,Node.js,Graphql,React Apollo,Apollo Client,Apollo Server,这是我的密码 在apollo客户机中,我使用useMutation 阿波罗客户 const [addTodo, { loading, error, data }] = useMutation(gql); 阿波罗服务器 Mutation: { signUp: async (_, formSignUp, { models: { User }, res }) => { try { const user = new User(formSignUp);
const [addTodo, { loading, error, data }] = useMutation(gql);
阿波罗服务器
Mutation: {
signUp: async (_, formSignUp, { models: { User }, res }) => {
try {
const user = new User(formSignUp);
await user.save();
const token = await user.generateAuthToken();
res.cookie("darkAmasia", token, {
httpOnly: true
});
return "string";
} catch (error) {
?????????
}
}
}
我应该在catch中写什么?要发送消息,{status:400,error:true}
正在使用中,请执行以下操作:错误。
我听说
throw new ApolloError
用于这些目的。但我不知道如何做。阅读有关错误处理的更多信息
您可以创建自己的错误类,该类扩展ApollError并将状态作为默认属性传递
Mutation: {
signUp: async (_, formSignUp, { models: { User }, res }) => {
try {
const user = new User(formSignUp);
await user.save();
const token = await user.generateAuthToken();
res.cookie("darkAmasia", token, {
httpOnly: true
});
return "string";
} catch (error) {
throw new ApolloError("Something went wrong", "BAD_INPUT",{status:400,error:true});
}
}
}
为什么控制台中出现错误?如何避免这种情况发生
Uncaught(in promise)错误:GraphQL错误:后端请求失败
而不是抛出尝试使用returnNo,这也没有帮助。