$util のユーティリティヘルパー
注記
現在、主に APPSYNC_JS ランタイムとそのドキュメントをサポートしています。こちらにある APPSYNC_JS ランタイムとそのガイドの使用をご検討ください。
$util 変数には、データの操作を容易にする一般的なユーティリティメソッドが含まれています。特に指定されていない限り、すべてのユーティリティでは UTF-8 文字セットが使用されます。
JSON パーシング utils
-
$util.parseJson(String) : Object -
"stringified" JSON を受け取り、結果のオブジェクト表現を返します。
-
$util.toJson(Object) : String -
オブジェクトを受け取り、そのオブジェクトの「文字列化された」JSON 表現を返します。
エンコーディング utils
-
$util.urlEncode(String) : String -
入力文字列を
application/x-www-form-urlencodedでエンコードされた文字列として返します。 -
$util.urlDecode(String) : String -
application/x-www-form-urlencodedでエンコードされた文字列をデコードして、エンコードされていない形式に戻します。 -
$util.base64Encode( byte[] ) : String -
入力を base64 でエンコードされた文字列にエンコードします。
-
$util.base64Decode(String) : byte[] -
base64 エンコードされた文字列からデータをデコードします。
ID 生成 utils
-
$util.autoId() : String -
ランダムに生成された 128 ビットの UUID を返します。
$util.autoUlid() : String-
ランダムに生成された 128 ビットの ULID (辞書的にソート可能なユニバーサルユニーク識別子) を返します。
$util.autoKsuid() : String-
長さ 27 の文字列としてエンコードされた、ランダムに生成された 128 ビットの KSUID (K ソート可能な固有識別子) base62 を返します。
エラー utils
-
$util.error(String) -
カスタムエラーをスローします。リクエストや呼び出し結果のエラーを検出するために、リクエストやレスポンスのマッピングテンプレートでこれを使用します。
-
$util.error(String, String) -
カスタムエラーをスローします。リクエストや呼び出し結果のエラーを検出するために、リクエストやレスポンスのマッピングテンプレートでこれを使用します。
errorTypeを指定することもできます。 -
$util.error(String, String, Object) -
カスタムエラーをスローします。リクエストや呼び出し結果のエラーを検出するために、リクエストやレスポンスのマッピングテンプレートでこれを使用します。
errorTypeとdataフィールドを指定することもできます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注記
dataはクエリ選択セットに基づいてフィルタリングされます。 -
$util.error(String, String, Object, Object) -
カスタムエラーをスローします。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeフィールド、dataフィールド、およびerrorInfoフィールドを指定できます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注記
dataはクエリ選択セットに基づいてフィルタリングされます。errorInfoの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。errorInfoはクエリ選択セットに基づいてフィルタリングされません。 -
$util.appendError(String) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。
$util.error(String)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。 -
$util.appendError(String, String) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeを指定できます。$util.error(String, String)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。 -
$util.appendError(String, String, Object) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeとdataフィールドを指定できます。$util.error(String, String, Object)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注記
dataはクエリ選択セットに基づいてフィルタリングされます。 -
$util.appendError(String, String, Object, Object) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeフィールド、dataフィールド、およびerrorInfoフィールドを指定できます。$util.error(String, String, Object, Object)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注記
dataはクエリ選択セットに基づいてフィルタリングされます。errorInfoの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。errorInfoはクエリ選択セットに基づいてフィルタリングされません。
条件検証 utils
-
$util.validate(Boolean, String) : void -
条件が false の場合、指定されたメッセージ付きで CustomTemplateException がスローされます。
-
$util.validate(Boolean, String, String) : void -
条件が false の場合、指定されたメッセージとエラータイプ付きで CustomTemplateException がスローされます。
-
$util.validate(Boolean, String, String, Object) : void -
条件が false の場合、指定されたメッセージ、エラータイプ、およびレスポンスで返されたデータ付きで CustomTemplateException がスローされます。
Null 動作 utils
-
$util.isNull(Object) : Boolean -
指定されたオブジェクトが null である場合は true を返します。
-
$util.isNullOrEmpty(String) : Boolean -
指定されたデータが null または空の文字列である場合は true を返します。それ以外の場合は、false を返します。
-
$util.isNullOrBlank(String) : Boolean -
指定されたデータが null または空白文字列である場合は true を返します。それ以外の場合は、false を返します。
-
$util.defaultIfNull(Object, Object) : Object -
最初のオブジェクトが null でない場合は、そのオブジェクトを返します。それ以外の場合は、2 番目のオブジェクトを「デフォルトオブジェクト」として返します。
-
$util.defaultIfNullOrEmpty(String, String) : String -
最初の文字列型が null でも空の文字列でもない場合は、その文字列を返します。それ以外の場合は、2 番目の文字列型を「デフォルト文字列」として返します。
-
$util.defaultIfNullOrBlank(String, String) : String -
最初の文字列型が null でも空白文字列でもない場合は、その文字列型を返します。それ以外の場合は、2 番目の文字列型を「デフォルト文字列」として返します。
パターンのマッチング utils
-
$util.typeOf(Object) : String -
オブジェクトの型を表す文字列型を返します。サポートされている型識別名は "Null"、"Number"、"String"、"Map"、"List"、"Boolean" です。型を識別できない場合は、"Object" を返します。
-
$util.matches(String, String) : Boolean -
最初の引数で指定されたパターンが、2 番目の引数で指定されたデータと一致する場合は true を返します。パターンは正規表現である必要があります (例:
$util.matches("a*b", "aaaaab"))。この機能は Java の Pattern に基づいています。詳細については、Patternを参照してください。 -
$util.authType() : String -
リクエストで使用されているマルチ認可タイプを表す文字列型 (String) の値を返します。「IAM 認可」、「ユーザープールの認可」、「オープン ID Connect 認可」、または「API キー認可」のいずれかを返します。
Object validation utils
-
$util.isString(Object) : Boolean -
オブジェクトが文字列型である場合は true を返します。
-
$util.isNumber(Object) : Boolean -
オブジェクトが数値型である場合は true を返します。
-
$util.isBoolean(Object) : Boolean -
オブジェクトがブール型である場合は true を返します。
-
$util.isList(Object) : Boolean -
オブジェクトがリスト型である場合は true を返します。
-
$util.isMap(Object) : Boolean -
オブジェクトがマップ型である場合は true を返します。
CloudWatch ログ記録 Utils
$util.log.info(Object) : Void-
API のログレベル
ALL、INFO、またはDEBUGでリクエストレベルとフィールドレベルの CloudWatch ロギングが有効になっている場合、提供されたオブジェクトの文字列表現をリクエストされたログストリームに記録します。 $util.log.info(String, Object...) : Void-
API のログレベル
ALLでリクエストレベルとフィールドレベルの CloudWatch ロギングが有効になっている場合、提供されたオブジェクトの String 表現をリクエストされたログストリームに記録します。このユーティリティは、最初の入力フォーマット String の「{}」で示されるすべての変数を、指定されたオブジェクトの文字列表現に順番に置き換えます。 $util.log.debug(Object) : Void-
API のログレベル
ALLまたはDEBUGでリクエストレベルとフィールドレベルの CloudWatch ロギングが有効になっている場合、提供されたオブジェクトの文字列表現をリクエストされたログストリームに記録します。 $util.log.debug(String, Object...) : Void-
ログレベル
DEBUGまたは API のログレベルALLでフィールドレベルの CloudWatch ロギングが有効になっている場合、要求されたログストリームに提供されたオブジェクトの文字列表現を記録します。このユーティリティは、最初の入力フォーマット String の「{}」で示されるすべての変数を、指定されたオブジェクトの文字列表現に順番に置き換えます。 $util.log.error(Object) : Void-
API の任意のログレベル (
ALL、INFO、DEBUGなど) でフィールドレベルの CloudWatch ロギングが有効になっている場合、提供されたオブジェクトの文字列表現をリクエストされたログストリームに記録します。 $util.log.error(String, Object...) : Void-
ログレベル
ERRORまたは API のログレベルALLでフィールドレベルの CloudWatch ロギングが有効になっている場合、要求されたログストリームに提供されたオブジェクトの文字列表現を記録します。このユーティリティは、最初の入力フォーマット String の「{}」で示されるすべての変数を、指定されたオブジェクトの文字列表現に順番に置き換えます。
戻り値の動作 utils
$util.qr()および$util.quiet()-
VTL ステートメントを実行し、返される値を抑えます。これは、マップへの項目の追加など、一時的なプレースホルダーを使用せずにメソッドを実行する場合に便利です。例:
#set ($myMap = {}) #set($discard = $myMap.put("id", "first value"))次のようになります。
#set ($myMap = {}) $util.qr($myMap.put("id", "first value"))-
$util.escapeJavaScript(String) : String -
入力文字列を JavasScript のエスケープした文字列として返します。
-
$util.urlEncode(String) : String -
入力文字列を
application/x-www-form-urlencodedでエンコードされた文字列として返します。 -
$util.urlDecode(String) : String -
application/x-www-form-urlencodedでエンコードされた文字列をデコードして、エンコードされていない形式に戻します。 -
$util.base64Encode( byte[] ) : String -
入力を base64 でエンコードされた文字列にエンコードします。
-
$util.base64Decode(String) : byte[] -
base64 エンコードされた文字列からデータをデコードします。
-
$util.parseJson(String) : Object -
"stringified" JSON を受け取り、結果のオブジェクト表現を返します。
-
$util.toJson(Object) : String -
オブジェクトを受け取り、そのオブジェクトの「文字列化された」JSON 表現を返します。
-
$util.autoId() : String -
ランダムに生成された 128 ビットの UUID を返します。
$util.autoUlid() : String-
ランダムに生成された 128 ビットの ULID (辞書的にソート可能なユニバーサルユニーク識別子) を返します。
$util.autoKsuid() : String-
長さ 27 の文字列としてエンコードされた、ランダムに生成された 128 ビットの KSUID (K ソート可能な固有識別子) base62 を返します。
-
$util.unauthorized() -
解決されるフィールドに対して
Unauthorizedをスローします。リクエストまたはレスポンスのマッピングテンプレートでこれを使用し、呼び出し元にそのフィールドの解決が許可されるかどうかを判別します。 -
$util.error(String) -
カスタムエラーをスローします。リクエストや呼び出し結果のエラーを検出するために、リクエストやレスポンスのマッピングテンプレートでこれを使用します。
-
$util.error(String, String) -
カスタムエラーをスローします。リクエストや呼び出し結果のエラーを検出するために、リクエストやレスポンスのマッピングテンプレートでこれを使用します。
errorTypeを指定することもできます。 -
$util.error(String, String, Object) -
カスタムエラーをスローします。リクエストや呼び出し結果のエラーを検出するために、リクエストやレスポンスのマッピングテンプレートでこれを使用します。
errorTypeとdataフィールドを指定することもできます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注 :dataはクエリ選択セットに基づいてフィルタリングされます。 -
$util.error(String, String, Object, Object) -
カスタムエラーをスローします。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeフィールド、dataフィールド、およびerrorInfoフィールドを指定できます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注 :dataはクエリ選択セットに基づいてフィルタリングされます。errorInfoの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注 :errorInfoはクエリ選択セットに基づいてフィルタリングされません。 -
$util.appendError(String) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。
$util.error(String)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。 -
$util.appendError(String, String) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeを指定できます。$util.error(String, String)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。 -
$util.appendError(String, String, Object) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeとdataフィールドを指定できます。$util.error(String, String, Object)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注 :dataはクエリ選択セットに基づいてフィルタリングされます。 -
$util.appendError(String, String, Object, Object) -
カスタムエラーを追加します。これは、テンプレートがリクエストまたは呼び出し結果でエラーを検出した場合に、リクエストまたはレスポンスのマッピングテンプレートで使用できます。また、
errorTypeフィールド、dataフィールド、およびerrorInfoフィールドを指定できます。$util.error(String, String, Object, Object)とは異なり、テンプレートの評価は中断されないため、データを呼び出し元に返すことができます。dataの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注 :dataはクエリ選択セットに基づいてフィルタリングされます。errorInfoの値は、GraphQL レスポンスのerrors内の該当するerrorブロックに追加されます。注 :errorInfoはクエリ選択セットに基づいてフィルタリングされません。 -
$util.validate(Boolean, String) : void -
条件が false の場合、指定されたメッセージ付きで CustomTemplateException がスローされます。
-
$util.validate(Boolean, String, String) : void -
条件が false の場合、指定されたメッセージとエラータイプ付きで CustomTemplateException がスローされます。
-
$util.validate(Boolean, String, String, Object) : void -
条件が false の場合、指定されたメッセージ、エラータイプ、およびレスポンスで返されたデータ付きで CustomTemplateException がスローされます。
-
$util.isNull(Object) : Boolean -
指定されたオブジェクトが null である場合は true を返します。
-
$util.isNullOrEmpty(String) : Boolean -
指定されたデータが null または空の文字列である場合は true を返します。それ以外の場合は、false を返します。
-
$util.isNullOrBlank(String) : Boolean -
指定されたデータが null または空白文字列である場合は true を返します。それ以外の場合は、false を返します。
-
$util.defaultIfNull(Object, Object) : Object -
最初のオブジェクトが null でない場合は、そのオブジェクトを返します。それ以外の場合は、2 番目のオブジェクトを「デフォルトオブジェクト」として返します。
-
$util.defaultIfNullOrEmpty(String, String) : String -
最初の文字列型が null でも空の文字列でもない場合は、その文字列を返します。それ以外の場合は、2 番目の文字列型を「デフォルト文字列」として返します。
-
$util.defaultIfNullOrBlank(String, String) : String -
最初の文字列型が null でも空白文字列でもない場合は、その文字列型を返します。それ以外の場合は、2 番目の文字列型を「デフォルト文字列」として返します。
-
$util.isString(Object) : Boolean -
オブジェクトが文字列型である場合は true を返します。
-
$util.isNumber(Object) : Boolean -
オブジェクトが数値型である場合は true を返します。
-
$util.isBoolean(Object) : Boolean -
オブジェクトがブール型である場合は true を返します。
-
$util.isList(Object) : Boolean -
オブジェクトがリスト型である場合は true を返します。
-
$util.isMap(Object) : Boolean -
オブジェクトがマップ型である場合は true を返します。
-
$util.typeOf(Object) : String -
オブジェクトの型を表す文字列型を返します。サポートされている型識別名は "Null"、"Number"、"String"、"Map"、"List"、"Boolean" です。型を識別できない場合は、"Object" を返します。
-
$util.matches(String, String) : Boolean -
最初の引数で指定されたパターンが、2 番目の引数で指定されたデータと一致する場合は true を返します。パターンは正規表現である必要があります (例:
$util.matches("a*b", "aaaaab"))。この機能は Java の Pattern に基づいています。詳細については、Patternを参照してください。 -
$util.authType() : String -
リクエストで使用されているマルチ認可タイプを表す文字列型 (String) の値を返します。「IAM 認可」、「ユーザープールの認可」、「オープン ID Connect 認可」、または「API キー認可」のいずれかを返します。
$util.log.info(Object) : Void-
API のログレベル
ALLでリクエストレベルとフィールドレベルの CloudWatch ロギングが有効になっている場合、提供されたオブジェクトの String 表現をリクエストされたログストリームに記録します。 $util.log.info(String, Object...) : Void-
API のログレベル
ALLでリクエストレベルとフィールドレベルの CloudWatch ロギングが有効になっている場合、提供されたオブジェクトの String 表現をリクエストされたログストリームに記録します。このユーティリティは、最初の入力フォーマット String の「{}」で示されるすべての変数を、指定されたオブジェクトの文字列表現に順番に置き換えます。 $util.log.error(Object) : Void-
ログレベル
ERRORまたは API のログレベルALLでフィールドレベルの CloudWatch ロギングが有効になっている場合、要求されたログストリームに提供されたオブジェクトの文字列表現を記録します。 $util.log.error(String, Object...) : Void-
ログレベル
ERRORまたは API のログレベルALLでフィールドレベルの CloudWatch ロギングが有効になっている場合、要求されたログストリームに提供されたオブジェクトの文字列表現を記録します。このユーティリティは、最初の入力フォーマット String の「{}」で示されるすべての変数を、指定されたオブジェクトの文字列表現に順番に置き換えます。
-
-
$util.escapeJavaScript(String) : String -
入力文字列を JavasScript のエスケープした文字列として返します。
リゾルバー認可
-
$util.unauthorized() -
解決されるフィールドに対して
Unauthorizedをスローします。これは、呼び出し元にそのフィールドの解決が許可されるかどうかを判別するために、リクエストまたはレスポンスのマッピングテンプレートで使用できます。