【发布时间】:2019-02-26 10:30:28
【问题描述】:
也许我的术语不准确。我正在使用 AWS AppSync。我的架构:
type Book {
title: String
author: Author
}
type Author {
name: String
}
type Query {
getBook(title:String!): Book
}
getBook 的解析器返回一个形状如下的对象:
{
title: <string>
authorId: <number>
}
总是返回authorId。
我想做的是为字段Book.author 指定一个解析器,它将接收authorId 并从它自己的数据存储中获取该对象。这可能吗?
如果我试图做的事情是不可能的,那么正确的做法是什么,其中一个数据存储是一个包含两列的表 - { title, authorId },而一个单独的存储有一个包含以下列表的表作者,其中主键是列authorId。由于这是两个不同的服务,我不能像 SQL 查询一样加入这两个服务。
【问题讨论】:
-
解析器函数是代码,基本上一切皆有可能。进行两次调用并重塑数据以满足您计划公开的 API 格式似乎非常合理。
标签: api graphql microservices aws-appsync