How to response client(React) errCode and errorMessage in Grapql, Apollo Sever, primsa?
login: async (parent, args, context, info) => {
try {
const user = await context.prisma.user.findUnique({ where: { email: args.email } })
if (!user) {
return new ApolloError("Invalid password or password!")
// i want return {errCode: 1, errMessage: "Invalid password!"}
// instead of return new ApolloError("Invalid password or password!")
}
const valid = await bcrypt.compare(args.password, user.password)
if (!valid) {
return new ApolloError("Invalid password or password!")
// i want return {errCode: 1, errMessage: "Invalid password or password!"}
// instead of return new ApolloError("Invalid password or password!")
}
delete user["password"]
const token = jwt.sign({ userId: user.id }, APP_SECRET)
return {
token,
user,
}
}
catch (err) {
console.error(err)
return new ApolloError(`Error from server!`)
}
},