【发布时间】:2021-01-19 19:42:27
【问题描述】:
我是全新的 graphQL。我的要求是发送查询时,graphQL 应该返回如下 JSON 响应
{
user: '$',
name: 'Josh',
age: '30'
}
我尝试了以下方法,但没有得到结果。
var express = require('express');
var graphqlHTTP = require('express-graphql');
var { buildSchema } = require('graphql');
var schema = buildSchema(`
type Query {
user: String!
}
`);
// JSON
var json = {
user: '$',
name: 'Josh',
age: '30'
};
var root = {
user: () => {
return json;
}
};
var app = express();
app.use('/graphql', graphqlHTTP({
schema: schema,
rootValue: root,
graphiql: true,
}));
app.listen(4000);
console.log('Running a GraphQL API server at localhost:4000/graphql');
谁能指导我哪里出错了。
提前致谢。
【问题讨论】:
-
在 GraphQL 中,您希望为所有返回的 JSON 对象创建类型。在您的情况下,您不应该为用户返回
String,而可能是User类型的对象,然后定义用户类型:type User { user: String! name: String! age: String! }。考虑将年龄转换为Int。