【发布时间】:2019-12-12 00:20:56
【问题描述】:
我从 GraphQL 开始,我无法理解如何在 GraphQL 中抛出错误
我浏览了网络上的几篇文章,但几乎所有文章都使用 Apollo,而且代码结构看起来与我的工作方式大不相同。
考虑这段代码,我在这里进行突变,现在如何发送带有错误的响应消息并在出现错误时更改标头状态消息?
AddNewPersonalInfo: {
type: userDashboardType,
args: {
parameter: {
type: userCreationlInputType
}
},
resolve: async (parent, args, context) => {
args.parameter.userId = context.req.headers.userId
//Check if user info already exsist
const checkIfUserInformationExsist = await getSelectedThingFromTable('CatsWork_personal', 'userId', `${userId}`)
if (checkIfUserInformationExsist[0]) {
const error = {
code: 403,
message: 'User info Already exsist'
}
throw new Error(error)
} else {
try {
const addLinkedinUser = await insertIntheTable('personal', payload)
return true
} catch (err) {
console.error(err)
throw new Error(err)
}
}
}
}
【问题讨论】:
标签: javascript node.js graphql