AWS AppSync响应排序结果?

时间:2018-09-19 05:47:23

标签: amazon-web-services graphql aws-appsync

我想对$ctx.result.items进行排序并响应sortedResult
,我不想手动编写Velocity Template Language$ctx.result.items中的Response Mapping进行排序。有没有更好的方法来响应AWS AppSync中的sortedResult?

2 个答案:

答案 0 :(得分:2)

您要进行哪种类型的排序?如果使用DynamoDB解析器进行升序/降序,则可以在请求模板的ScanIndexForward参数上对此进行设置:https://docs.aws.amazon.com/appsync/latest/devguide/resolver-mapping-template-reference-dynamodb.html

答案 1 :(得分:1)

(如果您找到了解决方案,希望对您有所帮助)

这取决于您如何为DynamoDB表设计GSI或LSI。

here所述,“ DynamoDB在哈希主键属性上构建无序哈希索引,并在范围主键属性上构建排序范围索引。 “

这里的哈希索引与分区键相同,范围索引与排序键(旧术语和新术语)相同。

用类似的文字表示here-“所有具有相同分区键值的项目都存储在一起,按排序键值的排序顺序。” < / p>

因此,如果您以上述方式将GSI或LSI添加到DynamoDB表中(例如,所有产品ID为哈希/分区键,创建时间为范围/排序键,则需要按创建时间对产品进行排序)可以使用类似于example defined in this page of StackOverflow的东西。