AWS AppSync GraphQL API 只有 return 来自 DynamoDB 的 20 个项目
AWS AppSync GraphQL API only return 20 items from DynamoDB
我尝试 运行 查询 AWS AppSync 以获取所有待办事项列表,我在 DynamonDB 中获得了大约 50 项,但结果只有 return 我的网站中有 20 项,是吗AppSync 有任何限制吗?
我使用放大库来 运行 查询:
API.graphql(
graphqlOperation(queries.listTodos)
)
如何从我的 dynamoDB 中获取所有 50 个项目?
查询:
export const listTodos = `query ListTodos(
$filter: TableTodoFilterInput
$limit: Int
$nextToken: String
) {
listTodos(filter: $filter, limit: $limit, nextToken: $nextToken) {
items {
id
dateIn
dateOut
reservedBy
status
ttl
createdON
}
nextToken
}
}
`;
示例数据:
"items": [
{
"id": "ad2ce180-eae4-4bbd-abbc-00375e2dabd9",
"dateIn": "2019-03-13",
"dateOut": "2019-03-16",
"reservedBy": "Harith",
"status": "Pending Payment",
"ttl": 1552357596,
"createdON": "2019-03-11T02:26:36.608Z"
},
在您的 listTodos
解析器的请求映射模板中可能有以下行:
"limit": $util.defaultIfNull(${ctx.args.limit}, 20),
将此限制更改为 20 以外的值,或者如果您不希望结果受到限制,可以将其设置得非常高。 (注意:一旦您的结果集达到 1 MB,DynamoDB 将自动分页。)然而,为扫描操作设置某种合理的限制通常是一个好习惯,因为扫描操作可以消耗 100% 的预配置读取容量 table 和 throttle other requests to your table。随着 table 规模的增长,这一点尤其重要,但对于 50 条记录,这应该不是问题。
我尝试 运行 查询 AWS AppSync 以获取所有待办事项列表,我在 DynamonDB 中获得了大约 50 项,但结果只有 return 我的网站中有 20 项,是吗AppSync 有任何限制吗?
我使用放大库来 运行 查询:
API.graphql(
graphqlOperation(queries.listTodos)
)
如何从我的 dynamoDB 中获取所有 50 个项目?
查询:
export const listTodos = `query ListTodos(
$filter: TableTodoFilterInput
$limit: Int
$nextToken: String
) {
listTodos(filter: $filter, limit: $limit, nextToken: $nextToken) {
items {
id
dateIn
dateOut
reservedBy
status
ttl
createdON
}
nextToken
}
}
`;
示例数据:
"items": [
{
"id": "ad2ce180-eae4-4bbd-abbc-00375e2dabd9",
"dateIn": "2019-03-13",
"dateOut": "2019-03-16",
"reservedBy": "Harith",
"status": "Pending Payment",
"ttl": 1552357596,
"createdON": "2019-03-11T02:26:36.608Z"
},
在您的 listTodos
解析器的请求映射模板中可能有以下行:
"limit": $util.defaultIfNull(${ctx.args.limit}, 20),
将此限制更改为 20 以外的值,或者如果您不希望结果受到限制,可以将其设置得非常高。 (注意:一旦您的结果集达到 1 MB,DynamoDB 将自动分页。)然而,为扫描操作设置某种合理的限制通常是一个好习惯,因为扫描操作可以消耗 100% 的预配置读取容量 table 和 throttle other requests to your table。随着 table 规模的增长,这一点尤其重要,但对于 50 条记录,这应该不是问题。