GraphQL Yoga是一个基于Express.js的GraphQL服务器库,它提供了一种简单而灵活的方式来构建和运行GraphQL API。要执行多个嵌套查询(GET请求)可以按照以下步骤进行:
createServer
函数创建一个服务器实例,并将schema和resolver传递给它。start
方法启动服务器,并指定端口号。以下是一个简单的示例代码,演示如何使用GraphQL Yoga执行多个嵌套查询(GET请求):
const { GraphQLServer } = require('graphql-yoga');
// 定义schema
const typeDefs = `
type Query {
user(id: ID!): User
}
type User {
id: ID!
name: String!
posts: [Post]
}
type Post {
id: ID!
title: String!
}
`;
// 定义resolver
const resolvers = {
Query: {
user: (parent, { id }, context, info) => {
// 根据id查询用户信息
const user = getUserById(id);
return user;
},
},
User: {
posts: (parent, args, context, info) => {
// 根据用户id查询用户的所有帖子
const posts = getPostsByUserId(parent.id);
return posts;
},
},
};
// 创建GraphQL服务器
const server = new GraphQLServer({ typeDefs, resolvers });
// 启动服务器
server.start({ port: 4000 }, () => {
console.log('Server is running on http://localhost:4000');
});
在上面的示例中,我们定义了一个简单的schema,包含了User
和Post
两个类型。User
类型有一个posts
字段,用于查询用户的所有帖子。在resolver中,我们实现了user
和posts
字段的查询逻辑。
你可以根据实际需求扩展和修改上述示例代码,以满足你的具体业务需求。
领取专属 10元无门槛券
手把手带您无忧上云