如何在 GraphQl 和 Neo4js 中处理响应
Posted
技术标签:
【中文标题】如何在 GraphQl 和 Neo4js 中处理响应【英文标题】:How to handle response in GraphQl and Neo4js 【发布时间】:2019-03-03 07:08:31 【问题描述】:如果电子邮件已存在于数据库中,我将无法获得回复。 我尝试了下面的示例代码。但我的回应是空的(见图) 这是我的api
"query": "mutation authenticateUser($Phone: String!,$Email: String!, $type: String!, $otp: Int!) authenticateUser(Phone : $Phone,Email: $Email,type : $type, otp : $otp) status ", "variables" : this.authenticateUserObj
和后端代码:
router.post('/graphql', express_graphql(request =>
return
schema: schema,
rootValue: root,
graphiql: true
));
var root =
authenticateUser : authenticateUser
;
var schema = buildSchema(`
type Mutation
authenticateUser(Phone: String, Email: String,type: String,otp: Int,status: String): Authenticate
type Authenticate
Phone : String
Email : String
Type : String
otp : Int
status: String
`);
var authenticateUser = function(Phone, Email, type, otp)
db.cypher(
query: "MATCH (n:userNodes) where n.Email='"+Email+"' RETURN count(*) as total",
, function (err, results)
if(results[0]['total'] > 0)
return status: "Email already exist";
);
【问题讨论】:
【参考方案1】:你在 results[0] 中获得价值吗?是对象还是数组?
【讨论】:
是的,以整数形式获取结果。 我唯一的问题是为什么 (return status: "Email already exists";) 没有在 db.cypher 中发回响应?如果我在 db.cypher 之外返回响应,它就像我想要的那样工作。以上是关于如何在 GraphQl 和 Neo4js 中处理响应的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Spring 中为 GraphQL 实现异常处理程序
你如何在 GraphQL 中处理多个类型的数组(例如:不同的内容块)?