我正在尝试创建一个查询来登录用户,我的查询类型是AuthPayload,在此有效负载中,我具有令牌和用户:
type AuthPayload {
token: String
user: User
}
type User {
uuid: ID!
email: String
password: String
}
这是我在服务器上定义的查询:
login(email: String!, password: String!): AuthPayload @cypher(
statement: """
MATCH (u:User) WHERE u.email = email AND u.password = password RETURN u
"""
)
这是我的解析器:
Query: {
login: (parent, args, context, info) => svcUsers.login(parent, args, context, info),
}
这是我的服务
login(parent, args, context, info){
let user = null;
const query = cypherQuery(args, context, info);
return {
token: '123',
user: {
email: '123',
password: '321'
}
};
}
这是我要请求的查询:
query login($email: String!, $password: String!) {
login(email: $email, password: $password) {
token,
user {
email
}
}
}
问题是我收到以下错误消息作为重新操作:无法读取未定义的属性“ 0”,但是如果我从请求中删除用户:
query login($email: String!, $password: String!) {
login(email: $email, password: $password) {
token
}
}
我可以使用令牌看到正确的结果。...错误在哪里?
非常感谢