本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
$util.transform 中的转换帮助程序
注意
我们现在主要支持 APPSYNC _JS 运行时及其文档。请考虑在此处使用 APPSYNC _JS 运行时及其指南。
$util.transform
包含一些帮助程序方法,可以更轻松地对数据来源执行复杂的操作,例如 Amazon DynamoDB 筛选操作。
转换帮助程序
$util.transform.toDynamoDBFilterExpression(Map) : Map
-
将输入字符串转换为筛选条件表达式以用于 DynamoDB。
Input: $util.transform.toDynamoDBFilterExpression({ "title":{ "contains":"Hello World" } }) Output: { "expression" : "contains(#title, :title_contains)" "expressionNames" : { "#title" : "title", }, "expressionValues" : { ":title_contains" : { "S" : "Hello World" } }, }
$util.transform.toElasticsearchQueryDSL(Map) : Map
-
将给定输入转换为其等效的 OpenSearch Query DSL 表达式,将其作为JSON字符串返回。
Input: $util.transform.toElasticsearchQueryDSL({ "upvotes":{ "ne":15, "range":[ 10, 20 ] }, "title":{ "eq":"hihihi", "wildcard":"h*i" } }) Output: { "bool":{ "must":[ { "bool":{ "must":[ { "bool":{ "must_not":{ "term":{ "upvotes":15 } } } }, { "range":{ "upvotes":{ "gte":10, "lte":20 } } } ] } }, { "bool":{ "must":[ { "term":{ "title":"hihihi" } }, { "wildcard":{ "title":"h*i" } } ] } } ] } }
假设默认运算符为AND。
转换帮助程序订阅筛选条件
$util.transform.toSubscriptionFilter(Map) : Map
-
将
Map
输入对象转换为SubscriptionFilter
表达式对象。$util.transform.toSubscriptionFilter
方法用作$extensions.setSubscriptionFilter()
扩展的输入。有关更多信息,请参阅扩展。 $util.transform.toSubscriptionFilter(Map, List) : Map
-
将
Map
输入对象转换为SubscriptionFilter
表达式对象。$util.transform.toSubscriptionFilter
方法用作$extensions.setSubscriptionFilter()
扩展的输入。有关更多信息,请参阅扩展。第一个参数是转换为
SubscriptionFilter
表达式对象的Map
输入对象。第二个参数是字段名称List
,在构建SubscriptionFilter
表达式对象时,将在第一个Map
输入对象中忽略这些字段名称。 $util.transform.toSubscriptionFilter(Map, List, Map) : Map
-
将
Map
输入对象转换为SubscriptionFilter
表达式对象。$util.transform.toSubscriptionFilter
方法用作$extensions.setSubscriptionFilter()
扩展的输入。有关更多信息,请参阅扩展。第一个参数是转换为
SubscriptionFilter
表达式对象的Map
输入对象,第二个参数是在第一个Map
输入对象中忽略的字段名称List
,第三个参数是构建SubscriptionFilter
表达式对象时包含的严格规则Map
输入对象。这些严格规则包含在SubscriptionFilter
表达式对象中,以便至少满足其中的一个规则才能通过订阅筛选条件。
订阅筛选条件参数
下表介绍了如何定义以下实用程序的参数:
-
$util.transform.toSubscriptionFilter(Map) : Map
-
$util.transform.toSubscriptionFilter(Map, List) : Map
-
$util.transform.toSubscriptionFilter(Map, List, Map) : Map