A希望通过在apollo-federation中扩展评论与帖子。
创始人
2024-09-29 07:00:17
0
  1. 首先,在apollo-federation中定义一个Comment服务和一个Post服务:

// Comment服务 type Comment @key(fields: "id") { id: ID! postId: ID! text: String! }

extend type Query { getCommentById(id: ID!): Comment }

// Post服务 type Post @key(fields: "id") { id: ID! title: String! authorId: ID! }

extend type Query { getPostById(id: ID!): Post }

  1. 然后,通过使用JS代码扩展Comment服务和Post服务来连接它们:

// 扩展Comment服务 const resolvers = { Comment: { post(comment) { return { __typename: 'Post', id: comment.postId }; }, }, }; const server = new ApolloServer({ schema: buildFederatedSchema([ { typeDefs: CommentServiceTypeDefs, resolvers, }, ]), });

// 扩展Post服务 const resolvers = { Post: { comments(post) { return [ { __typename: 'Comment', id: '1', text: 'Comment 1 for Post 1', postId: '1' }, { __typename: 'Comment', id: '2', text: 'Comment 2 for Post 1', postId: '1' }, { __typename: 'Comment', id: '3', text: 'Comment 1 for Post 2', postId: '2' }, { __typename: 'Comment', id: '4', text: 'Comment 2 for Post 2', postId: '2' }, ].filter(comment => comment.postId === post.id); }, }, }; const server = new ApolloServer({ schema: buildFederatedSchema([ { typeDefs: PostServiceTypeDefs, resolvers, }, ]), });

  1. 最后,在Apollo Federation Gateway中设置服务:

// Apollo Federation Gateway中的服务设置 const gateway = new ApolloGateway({ serviceList: [ { name: 'comment-service', url: '[Comment Service URL]' }, { name: 'post-service', url: '[Post Service URL]' }, ], });

const server = new ApolloServer({ gateway, subscriptions: false, });

// 启动Apollo Federation Gateway服务器 server.listen().then(({ url }) => { console.log(� Gateway ready at ${url}); });

相关内容

热门资讯

昨日!微乐小程序黑科技,微乐河... 昨日!微乐小程序黑科技,微乐河北自建房脚本免费入口(透视)本来是有挂(哔哩哔哩)1、下载好微乐河北自...
8分钟下载!微乐小程序黑科技,... 8分钟下载!微乐小程序黑科技,微信小程序微乐辅助器贴吧(开挂)真是有挂(2026)暗藏猫腻,小编详细...
2026版技巧!微乐小程序免费... 2026版技巧!微乐小程序免费黑科技,微乐自建房辅助(透视)本来真的有挂(哔哩哔哩)一、微乐小程序免...
第六分钟辅助!微乐小程序黑科技... 第六分钟辅助!微乐小程序黑科技,微乐小程序辅助器(开挂)果然是真的挂(2026)暗藏猫腻,小编详细说...
攻略辅助挂!微乐小程序黑科技,... 攻略辅助挂!微乐小程序黑科技,微乐江苏小程序游戏破解器下载(透视)本来存在有挂(哔哩哔哩)1、玩家可...
五分钟神器!微乐小程序黑科技,... 五分钟神器!微乐小程序黑科技,微乐钻石兑换码(开挂)一贯真的有挂(2026)1、许多玩家不知道微乐小...
5分钟下载!微乐小程序黑科技,... 5分钟下载!微乐小程序黑科技,微乐游戏辅助脚本安卓(开挂)都是有挂(2026)该软件可以轻松地帮助玩...
透视ai!微乐小程序免费黑科技... 透视ai!微乐小程序免费黑科技,微乐自建房辅助免费入口(透视)原来有挂(哔哩哔哩)1、微乐自建房辅助...
第八分钟工具!微乐小程序免费黑... 第八分钟工具!微乐小程序免费黑科技,微乐自建房安装挂(开挂)好像真的是有挂(2026)1、进入到微乐...
方法辅助挂!微乐小程序免费黑科... 方法辅助挂!微乐小程序免费黑科技,微信小程序微乐房间的挂多少钱(透视)总是真的有挂(哔哩哔哩)1、上...