

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Pembantu utilitas di \$1 util
<a name="utility-helpers-in-util"></a>

**catatan**  
Kami sekarang terutama mendukung runtime APPSYNC\$1JS dan dokumentasinya. [Harap pertimbangkan untuk menggunakan runtime APPSYNC\$1JS dan panduannya di sini.](https://docs.aws.amazon.com/appsync/latest/devguide/resolver-reference-js-version.html)

`$util`Variabel berisi metode utilitas umum untuk membantu Anda bekerja dengan data. Kecuali ditentukan lain, semua utilitas menggunakan set karakter UTF-8.

## utilitas penguraian JSON
<a name="utility-helpers-in-json-parsing"></a>

### JSON menguraikan daftar utilitas
<a name="utility-helpers-in-json-parsing-list"></a>

** **`$util.parseJson(String) : Object`** **  
Mengambil “stringified” JSON dan mengembalikan representasi objek dari hasilnya.

** **`$util.toJson(Object) : String`** **  
Mengambil objek dan mengembalikan representasi JSON “stringified” dari objek itu.

## Pengkodean utilitas
<a name="utility-helpers-in-encoding"></a>

### Pengkodean daftar utilitas
<a name="utility-helpers-in-encoding-list"></a>

** **`$util.urlEncode(String) : String`** **  
Mengembalikan string masukan sebagai string `application/x-www-form-urlencoded` dikodekan.

** **`$util.urlDecode(String) : String`** **  
Mendekode string yang `application/x-www-form-urlencoded` dikodekan kembali ke bentuk yang tidak dikodekan.

** **`$util.base64Encode( byte[] ) : String`** **  
Mengkodekan input ke dalam string yang dikodekan base64.

** **`$util.base64Decode(String) : byte[]`** **  
Mendekode data dari string yang dikodekan base64.

## Utilitas pembuatan ID
<a name="utility-helpers-in-id-gen"></a>

### Daftar utilitas pembuatan ID
<a name="utility-helpers-in-id-gen-list"></a>

** **`$util.autoId() : String`** **  
Mengembalikan UUID 128-bit yang dihasilkan secara acak.

****`$util.autoUlid() : String`****  
Mengembalikan ULID 128-bit yang dihasilkan secara acak (Universalally Unique Lexicographically Sortable Identifier).

****`$util.autoKsuid() : String`****  
Mengembalikan 128-bit yang dihasilkan secara acak KSUID (K-Sortable Unique Identifier) base62 dikodekan sebagai String dengan panjang 27.

## Kesalahan utils
<a name="utility-helpers-in-error"></a>

### Daftar utilitas kesalahan
<a name="utility-helpers-in-error-list"></a>

** `$util.error(String)` **  
Melempar kesalahan khusus. Gunakan ini dalam template pemetaan permintaan atau respons untuk mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan.

** `$util.error(String, String)` **  
Melempar kesalahan khusus. Gunakan ini dalam template pemetaan permintaan atau respons untuk mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Anda juga dapat menentukan file`errorType`.

** `$util.error(String, String, Object)` **  
Melempar kesalahan khusus. Gunakan ini dalam template pemetaan permintaan atau respons untuk mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Anda juga dapat menentukan `errorType` dan `data` bidang. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL.  
`data`akan disaring berdasarkan set pemilihan kueri.

** `$util.error(String, String, Object, Object)` **  
Melempar kesalahan khusus. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, `errorType` bidang, `data` bidang, dan `errorInfo` bidang dapat ditentukan. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL.   
`data`akan disaring berdasarkan set pemilihan kueri. `errorInfo`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL.  
`errorInfo`**TIDAK** akan disaring berdasarkan set pemilihan kueri.

** `$util.appendError(String)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Tidak seperti`$util.error(String)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon.

** `$util.appendError(String, String)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, `errorType` dapat ditentukan. Tidak seperti`$util.error(String, String)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon.

** `$util.appendError(String, String, Object)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, bidang `errorType` dan `data` bidang dapat ditentukan. Tidak seperti`$util.error(String, String, Object)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL.   
`data`akan disaring berdasarkan set pemilihan kueri.

** `$util.appendError(String, String, Object, Object)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, `errorType` bidang, `data` bidang, dan `errorInfo` bidang dapat ditentukan. Tidak seperti`$util.error(String, String, Object, Object)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL.  
`data`akan disaring berdasarkan set pemilihan kueri. `errorInfo`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL.  
`errorInfo`**TIDAK** akan disaring berdasarkan set pemilihan kueri.

## Utils validasi kondisi
<a name="utility-helpers-in-condition"></a>

### Daftar utilitas validasi kondisi
<a name="utility-helpers-in-condition-list"></a>

** `$util.validate(Boolean, String) : void` **  
Jika kondisinya salah, lempar a CustomTemplateException dengan pesan yang ditentukan.

** `$util.validate(Boolean, String, String) : void` **  
Jika kondisinya salah, lempar a CustomTemplateException dengan pesan dan jenis kesalahan yang ditentukan.

** `$util.validate(Boolean, String, String, Object) : void` **  
Jika kondisinya salah, lempar a CustomTemplateException dengan pesan dan jenis kesalahan yang ditentukan, serta data untuk kembali dalam respons.

## Utils perilaku nol
<a name="utility-helpers-in-null-behavior"></a>

### Daftar utilitas perilaku nol
<a name="utility-helpers-in-null-behavior-list"></a>

** `$util.isNull(Object) : Boolean` **  
Mengembalikan nilai true jika objek yang disediakan adalah null.

** `$util.isNullOrEmpty(String) : Boolean` **  
Mengembalikan nilai true jika data yang disediakan adalah null atau string kosong. Jika tidak, mengembalikan false.

** `$util.isNullOrBlank(String) : Boolean` **  
Mengembalikan nilai true jika data yang disediakan adalah null atau string kosong. Jika tidak, mengembalikan false.

** `$util.defaultIfNull(Object, Object) : Object` **  
Mengembalikan Object pertama jika tidak null. Jika tidak, mengembalikan objek kedua sebagai “Objek default”.

** `$util.defaultIfNullOrEmpty(String, String) : String` **  
Mengembalikan String pertama jika tidak null atau kosong. Jika tidak, mengembalikan String kedua sebagai “String default”.

** `$util.defaultIfNullOrBlank(String, String) : String` **  
Mengembalikan String pertama jika tidak null atau kosong. Jika tidak, mengembalikan String kedua sebagai “String default”.

## Utils pencocokan pola
<a name="utility-helpers-in-pattern-matching"></a>

### Jenis dan pola pencocokan daftar utilitas
<a name="utility-helpers-in-type-pattern-matching-list"></a>

** `$util.typeOf(Object) : String` **  
Mengembalikan String menggambarkan jenis Object. Identifikasi tipe yang didukung adalah: “Null”, “Number”, “String”, “Map”, “List”, “Boolean”. Jika suatu tipe tidak dapat diidentifikasi, tipe yang dikembalikan adalah “Objek”.

** `$util.matches(String, String) : Boolean` **  
Mengembalikan nilai true jika pola yang ditentukan dalam argumen pertama cocok dengan data yang disediakan dalam argumen kedua. Pola harus berupa ekspresi reguler seperti`$util.matches("a*b", "aaaaab")`. Fungsionalitas ini didasarkan pada [Pola](https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html), yang dapat Anda referensikan untuk dokumentasi lebih lanjut.

** `$util.authType() : String` **  
Mengembalikan String yang menjelaskan jenis multi-auth yang digunakan oleh permintaan, mengembalikan “IAM Authorization”, “User Pool Authorization”, “Open ID Connect Authorization”, atau “API Key Authorization”.

## Utils validasi objek
<a name="utility-helpers-in-object-validation"></a>

### Daftar utilitas validasi objek
<a name="utility-helpers-in-object-validation-list"></a>

** `$util.isString(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah String.

** `$util.isNumber(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Number.

** `$util.isBoolean(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Boolean.

** `$util.isList(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah List.

** `$util.isMap(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Peta.

## CloudWatch utilitas logging
<a name="utility-helpers-in-logging"></a>

### CloudWatch daftar utilitas log
<a name="utility-helpers-in-cloudwatch-logs"></a>

**`$util.log.info(Object) : Void`**  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat pencatatan tingkat permintaan dan tingkat bidang diaktifkan dengan level CloudWatch log`ALL`,, `INFO` atau pada API. `DEBUG`

**`$util.log.info(String, Object...) : Void`**  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat pencatatan tingkat permintaan dan tingkat bidang diaktifkan dengan tingkat CloudWatch log pada API. `ALL` Utilitas ini akan menggantikan semua variabel yang ditunjukkan oleh “\$1\$1” dalam format input pertama String dengan representasi String dari Objek yang disediakan secara berurutan.

**`$util.log.debug(Object) : Void`**  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat pencatatan tingkat permintaan dan tingkat bidang diaktifkan dengan tingkat CloudWatch log atau pada API. `ALL` `DEBUG`

**`$util.log.debug(String, Object...) : Void`**  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat CloudWatch logging tingkat bidang diaktifkan dengan level log `DEBUG` atau level log `ALL` pada API. Utilitas ini akan menggantikan semua variabel yang ditunjukkan oleh “\$1\$1” dalam format input pertama String dengan representasi String dari Objek yang disediakan secara berurutan.

**`$util.log.error(Object) : Void`**  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat CloudWatch logging tingkat bidang diaktifkan dengan tingkat log **apa pun** (`ALL`,,, `INFO``DEBUG`, dll.) pada API.

**`$util.log.error(String, Object...) : Void`**  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat CloudWatch logging tingkat bidang diaktifkan dengan level log `ERROR` atau level log `ALL` pada API. Utilitas ini akan menggantikan semua variabel yang ditunjukkan oleh “\$1\$1” dalam format input pertama String dengan representasi String dari Objek yang disediakan secara berurutan.

## Kembalikan utilitas perilaku nilai
<a name="utility-helpers-in-return-behavior"></a>

### Kembalikan daftar utilitas perilaku nilai
<a name="utility-helpers-in-behavior-list"></a>

****`$util.qr()`** dan `$util.quiet()` **  
Menjalankan pernyataan VTL sambil menekan nilai yang dikembalikan. Ini berguna untuk menjalankan metode tanpa menggunakan placeholder sementara, seperti menambahkan item ke peta. Contoh:  

```
#set ($myMap = {})
#set($discard = $myMap.put("id", "first value"))
```
Menjadi:  

```
#set ($myMap = {})
$util.qr($myMap.put("id", "first value"))
```  
** `$util.escapeJavaScript(String) : String` **  
Mengembalikan string masukan sebagai string JavaScript lolos.  
** `$util.urlEncode(String) : String` **  
Mengembalikan string masukan sebagai string `application/x-www-form-urlencoded` dikodekan.  
** `$util.urlDecode(String) : String` **  
Mendekode string yang `application/x-www-form-urlencoded` dikodekan kembali ke bentuk yang tidak dikodekan.  
** `$util.base64Encode( byte[] ) : String` **  
Mengkodekan input ke dalam string yang dikodekan base64.  
** `$util.base64Decode(String) : byte[]` **  
Mendekode data dari string yang dikodekan base64.  
** `$util.parseJson(String) : Object` **  
Mengambil “stringified” JSON dan mengembalikan representasi objek dari hasilnya.  
** `$util.toJson(Object) : String` **  
Mengambil objek dan mengembalikan representasi JSON “stringified” dari objek itu.  
** `$util.autoId() : String` **  
Mengembalikan UUID 128-bit yang dihasilkan secara acak.  
****`$util.autoUlid() : String`****  
Mengembalikan ULID 128-bit yang dihasilkan secara acak (Universalally Unique Lexicographically Sortable Identifier).  
****`$util.autoKsuid() : String`****  
Mengembalikan 128-bit yang dihasilkan secara acak KSUID (K-Sortable Unique Identifier) base62 dikodekan sebagai String dengan panjang 27.  
** `$util.unauthorized()` **  
Melempar `Unauthorized` untuk bidang yang sedang diselesaikan. Gunakan ini dalam templat pemetaan permintaan atau respons untuk menentukan apakah akan mengizinkan pemanggil menyelesaikan bidang.  
** `$util.error(String)` **  
Melempar kesalahan khusus. Gunakan ini dalam template pemetaan permintaan atau respons untuk mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan.  
** `$util.error(String, String)` **  
Melempar kesalahan khusus. Gunakan ini dalam template pemetaan permintaan atau respons untuk mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Anda juga dapat menentukan file`errorType`.  
** `$util.error(String, String, Object)` **  
Melempar kesalahan khusus. Gunakan ini dalam template pemetaan permintaan atau respons untuk mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Anda juga dapat menentukan `errorType` dan `data` bidang. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL. **Catatan**: `data` akan difilter berdasarkan set pemilihan kueri.  
** `$util.error(String, String, Object, Object)` **  
Melempar kesalahan khusus. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, `errorType` bidang, `data` bidang, dan `errorInfo` bidang dapat ditentukan. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL. **Catatan**: `data` akan difilter berdasarkan set pemilihan kueri. `errorInfo`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL. **Catatan**: **TIDAK `errorInfo`** akan difilter berdasarkan set pemilihan kueri.  
** `$util.appendError(String)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Tidak seperti`$util.error(String)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon.  
** `$util.appendError(String, String)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, `errorType` dapat ditentukan. Tidak seperti`$util.error(String, String)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon.  
** `$util.appendError(String, String, Object)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, bidang `errorType` dan `data` bidang dapat ditentukan. Tidak seperti`$util.error(String, String, Object)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL. **Catatan**: `data` akan difilter berdasarkan set pemilihan kueri.  
** `$util.appendError(String, String, Object, Object)` **  
Menambahkan kesalahan kustom. Ini dapat digunakan dalam template pemetaan permintaan atau respons jika template mendeteksi kesalahan dengan permintaan atau dengan hasil pemanggilan. Selain itu, `errorType` bidang, `data` bidang, dan `errorInfo` bidang dapat ditentukan. Tidak seperti`$util.error(String, String, Object, Object)`, evaluasi template tidak akan terganggu, sehingga data dapat dikembalikan ke penelepon. `data`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL. **Catatan**: `data` akan difilter berdasarkan set pemilihan kueri. `errorInfo`Nilai akan ditambahkan ke `error` blok yang sesuai di `errors` dalam respons GraphQL. **Catatan**: **TIDAK `errorInfo`** akan difilter berdasarkan set pemilihan kueri.  
** `$util.validate(Boolean, String) : void` **  
Jika kondisinya salah, lempar a CustomTemplateException dengan pesan yang ditentukan.  
** `$util.validate(Boolean, String, String) : void` **  
Jika kondisinya salah, lempar a CustomTemplateException dengan pesan dan jenis kesalahan yang ditentukan.  
** `$util.validate(Boolean, String, String, Object) : void` **  
Jika kondisinya salah, lempar a CustomTemplateException dengan pesan dan jenis kesalahan yang ditentukan, serta data untuk kembali dalam respons.  
** `$util.isNull(Object) : Boolean` **  
Mengembalikan nilai true jika objek yang disediakan adalah null.  
** `$util.isNullOrEmpty(String) : Boolean` **  
Mengembalikan nilai true jika data yang disediakan adalah null atau string kosong. Jika tidak, mengembalikan false.  
** `$util.isNullOrBlank(String) : Boolean` **  
Mengembalikan nilai true jika data yang disediakan adalah null atau string kosong. Jika tidak, mengembalikan false.  
** `$util.defaultIfNull(Object, Object) : Object` **  
Mengembalikan Object pertama jika tidak null. Jika tidak, mengembalikan objek kedua sebagai “Objek default”.  
** `$util.defaultIfNullOrEmpty(String, String) : String` **  
Mengembalikan String pertama jika tidak null atau kosong. Jika tidak, mengembalikan String kedua sebagai “String default”.  
** `$util.defaultIfNullOrBlank(String, String) : String` **  
Mengembalikan String pertama jika tidak null atau kosong. Jika tidak, mengembalikan String kedua sebagai “String default”.  
** `$util.isString(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah String.  
** `$util.isNumber(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Number.  
** `$util.isBoolean(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Boolean.  
** `$util.isList(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Daftar.  
** `$util.isMap(Object) : Boolean` **  
Mengembalikan nilai true jika Object adalah Peta.  
** `$util.typeOf(Object) : String` **  
Mengembalikan String menggambarkan jenis Object. Identifikasi tipe yang didukung adalah: “Null”, “Number”, “String”, “Map”, “List”, “Boolean”. Jika suatu tipe tidak dapat diidentifikasi, tipe yang dikembalikan adalah “Objek”.  
** `$util.matches(String, String) : Boolean` **  
Mengembalikan nilai true jika pola yang ditentukan dalam argumen pertama cocok dengan data yang disediakan dalam argumen kedua. Pola harus berupa ekspresi reguler seperti`$util.matches("a*b", "aaaaab")`. Fungsionalitas ini didasarkan pada [Pola](https://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html), yang dapat Anda referensikan untuk dokumentasi lebih lanjut.  
** `$util.authType() : String` **  
Mengembalikan String yang menjelaskan jenis multi-auth yang digunakan oleh permintaan, mengembalikan “IAM Authorization”, “User Pool Authorization”, “Open ID Connect Authorization”, atau “API Key Authorization”.  
****`$util.log.info(Object) : Void`****  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat pencatatan tingkat permintaan dan tingkat bidang diaktifkan dengan tingkat CloudWatch log pada API. `ALL`  
****`$util.log.info(String, Object...) : Void`****  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat pencatatan tingkat permintaan dan tingkat bidang diaktifkan dengan tingkat CloudWatch log pada API. `ALL` Utilitas ini akan menggantikan semua variabel yang ditunjukkan oleh “\$1\$1” dalam format input pertama String dengan representasi String dari Objek yang disediakan secara berurutan.  
****`$util.log.error(Object) : Void`****  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat CloudWatch logging tingkat bidang diaktifkan dengan level log `ERROR` atau level log `ALL` pada API.  
****`$util.log.error(String, Object...) : Void`****  
Mencatat representasi String dari Objek yang disediakan ke aliran log yang diminta saat CloudWatch logging tingkat bidang diaktifkan dengan level log `ERROR` atau level log `ALL` pada API. Utilitas ini akan menggantikan semua variabel yang ditunjukkan oleh “\$1\$1” dalam format input pertama String dengan representasi String dari Objek yang disediakan secara berurutan.

** `$util.escapeJavaScript(String) : String` **  
Mengembalikan string masukan sebagai string JavaScript lolos.

## Otorisasi penyelesai
<a name="utility-helpers-in-resolver-auth"></a>

### Daftar otorisasi penyelesai
<a name="utility-helpers-in-resolver-auth-list"></a>

** `$util.unauthorized()` **  
Melempar `Unauthorized` untuk bidang yang sedang diselesaikan. Gunakan ini dalam templat pemetaan permintaan atau respons untuk menentukan apakah akan mengizinkan pemanggil menyelesaikan bidang.