How to response client(React) errCode and errorMessage in Grapql, Apollo Sever, primsa?

Viewed 23

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!`)
}

},

0 Answers
Related