所以我在Amazon RDS中有一个Aurora无服务器数据库。我想在GraphQL中使用它并在某些类型之间建立连接。即,一个用户可以有一个关注者列表,并且与UserFollowerConnection类型一起使用。我想做的是分页,一次只能检索10个项目,并跟踪nextToken。我能够使用DynamoDB表成功完成此操作,但是我尝试使用RDS复制相同的实现。
我的架构如下所示:
type User {
userId: String!
userName: String!
fullName: String!
displayName: String!
email: String!
followers(limit: Int, nextToken: String): UserFollowerConnection
}
type UserFollower {
userId: String!
followerId: String!
dateFollowed: AWSDateTime!
}
type UserFollowerConnection {
items: [UserFollower]
nextToken: String
}
我当前的DynamoDB解析器实现看起来像这样:
{
"version" : "2017-02-28",
"operation" : "Query",
"query" : {
## Provide a query expression. **
"expression": "userId = :id",
"expressionValues" : {
":id": {
"S": "$ctx.source.userId"
}
}
},
"limit": #if($context.arguments.limit) $context.arguments.limit #else 10 #end,
"nextToken": #if($context.arguments.nextToken) "$context.arguments.nextToken" #else null #end
}
为AuroraServerless / MySQL实施此最佳做法是什么?如文档所示,我应该在AppSync的解析器中编写此代码,还是应该是连接到解析器的Lambda函数?