型システム (レスポンスマッピング) - AWS AppSync

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

型システム (レスポンスマッピング)

DynamoDB からレスポンスを受信すると、 はそれを GraphQL 型とJSONプリミティブ型 AWS AppSync に自動的に変換します。DynamoDB の各属性はデコードされ、レスポンスマッピングコンテキストで返されます。

たとえば、DynamoDB が以下を返したとします。

{ "id" : { "S" : "1234" }, "name" : { "S" : "Nadia" }, "age" : { "N" : 25 } }

次に、 AWS AppSync DynamoDB リゾルバーはそれを GraphQL に変換し、次のようにJSON入力します。

{ "id" : "1234", "name" : "Nadia", "age" : 25 }

このセクションでは、 が次の DynamoDB スカラー、ドキュメント、およびセットタイプ AWS AppSync を変換する方法について説明します。

文字列型 S

単一の文字列値です。DynamoDB 文字列値が文字列として返されます。

たとえば、DynamoDB が次の DynamoDB の文字列値を返したとします。

{ "S" : "some string" }

AWS AppSync はそれを文字列に変換します。

"some string"
文字列セット型 SS

1 組の文字列値です。DynamoDB 文字列セット値が文字列のリストとして返されます。

たとえば、DynamoDB が次の DynamoDB 文字列セット値を返したとします。

{ "SS" : [ "first value", "second value", ... ] }

AWS AppSync はそれを文字列のリストに変換します。

[ "+1 555 123 4567", "+1 555 234 5678" ]
数値型 N

単一の数値です。DynamoDB 数値が数字として返されます。

たとえば、DynamoDB が次の DynamoDB の数値を返したとします。

{ "N" : 1234 }

AWS AppSync はそれを数値に変換します。

1234
数値セット型 NS

1 組の数値です。DynamoDB 数値セットが数字のリストとして返されます。

たとえば、DynamoDB が次の DynamoDB の数値セット値を返したとします。

{ "NS" : [ 67.8, 12.2, 70 ] }

AWS AppSync はそれを数値のリストに変換します。

[ 67.8, 12.2, 70 ]
バイナリ型 B

バイナリ値です。DynamoDB のバイナリ値は、その値を Base64 で表した文字列として返されます。

たとえば、DynamoDB が次の DynamoDB のバイナリ値を返したとします。

{ "B" : "SGVsbG8sIFdvcmxkIQo=" }

AWS AppSync は、これを 値の base64 表現を含む文字列に変換します。

"SGVsbG8sIFdvcmxkIQo="

バイナリデータは、464RFC8 および 2045 で指定された base64 エンコードスキームでエンコードされることに注意してください。 RFC

バイナリセット型 BS

1 組のバイナリ値です。DynamoDB のバイナリセット値は、その値を Base64 で表した文字列のリストとして返されます。

たとえば、DynamoDB が次の DynamoDB のバイナリ値を返したとします。

{ "BS" : [ "SGVsbG8sIFdvcmxkIQo=", "SG93IGFyZSB5b3U/Cg==" ... ] }

AWS AppSync は、値を base64 で表現した文字列のリストに変換します。

[ "SGVsbG8sIFdvcmxkIQo=", "SG93IGFyZSB5b3U/Cg==" ... ]

バイナリデータは、464RFC8 および 2045 で指定された base64 エンコードスキームでエンコードされることに注意してください。 RFC

ブール型 BOOL

ブール値。DynamoDB ブール値がブールとして返されます。

たとえば、DynamoDB が次の DynamoDB のブール値を返したとします。

{ "BOOL" : true }

AWS AppSync はそれをブール値に変換します。

true
リスト型 L

サポートされているその他の DynamoDB の値のリストです。DynamoDB のリスト値は値のリストとして返され、内部のそれぞれの値も変換されます。

たとえば、DynamoDB が次の DynamoDB の文字列値を返したとします。

{ "L" : [ { "S" : "A string value" }, { "N" : 1 }, { "SS" : [ "Another string value", "Even more string values!" ] } ] }

AWS AppSync は変換された値のリストに変換します。

[ "A string value", 1, [ "Another string value", "Even more string values!" ] ]
マップ型 M

サポートされるその他の DynamoDB の値のキー/値の集合です。DynamoDB マップ値はJSONオブジェクトとして返され、各キー/値も変換されます。

たとえば、DynamoDB が次の DynamoDB のバイナリ値を返したとします。

{ "M" : { "someString" : { "S" : "A string value" }, "someNumber" : { "N" : 1 }, "stringSet" : { "SS" : [ "Another string value", "Even more string values!" ] } } }

AWS AppSync はそれを JSON オブジェクトに変換します。

{ "someString" : "A string value", "someNumber" : 1, "stringSet" : [ "Another string value", "Even more string values!" ] }
Null 型 NULL

null 値です。

たとえば、DynamoDB が次の DynamoDB のブール値を返したとします。

{ "NULL" : null }

AWS AppSync はこれを null に変換します。

null