

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

# Menyiapkan respons integrasi WebSocket API di API Gateway
<a name="apigateway-websocket-api-integration-responses"></a>

Bagian berikut memberikan gambaran singkat tentang respons integrasi untuk WebSocket API dan cara menyiapkan respons integrasi untuk WebSocket API. 

**Topics**
+ [Ikhtisar tanggapan integrasi](#apigateway-websocket-api-integration-response-overview)
+ [Respons integrasi untuk komunikasi dua arah](#apigateway-websocket-api-integration-response-for-two-way-communication)
+ [Menyiapkan respons integrasi menggunakan konsol API Gateway](#apigateway-websocket-api-integration-response-using-console)
+ [Siapkan respons integrasi menggunakan AWS CLI](#apigateway-websocket-api-integration-response-using-awscli)

## Ikhtisar tanggapan integrasi
<a name="apigateway-websocket-api-integration-response-overview"></a>

Respons integrasi API Gateway adalah cara memodelkan dan memanipulasi respons dari layanan backend. Ada beberapa perbedaan dalam penyiapan REST API versus respons integrasi WebSocket API, tetapi secara konseptual perilakunya sama.

WebSocket rute dapat dikonfigurasi untuk komunikasi dua arah atau satu arah.
+ Saat rute dikonfigurasi untuk komunikasi dua arah, respons integrasi memungkinkan Anda mengonfigurasi transformasi pada muatan pesan yang dikembalikan, mirip dengan respons integrasi untuk REST. APIs
+ Jika rute dikonfigurasi untuk komunikasi satu arah, maka terlepas dari konfigurasi respons integrasi apa pun, tidak ada respons yang akan dikembalikan melalui WebSocket saluran setelah pesan diproses.

 API Gateway tidak akan meneruskan respons backend ke respons rute, kecuali jika Anda menyiapkan respons rute. Untuk mempelajari cara menyiapkan respons rute, lihat[Siapkan respons rute untuk WebSocket APIs di API Gateway](apigateway-websocket-api-route-response.md).

## Respons integrasi untuk komunikasi dua arah
<a name="apigateway-websocket-api-integration-response-for-two-way-communication"></a>

Integrasi dapat dibagi menjadi integrasi *proxy* dan integrasi *non-proxy*.

**penting**  
Untuk *integrasi proxy*, API Gateway secara otomatis meneruskan output backend ke pemanggil sebagai muatan lengkap. Tidak ada respon integrasi.

Untuk *integrasi non-proxy*, Anda harus menyiapkan setidaknya satu respons integrasi:
+ Idealnya, salah satu tanggapan integrasi Anda harus bertindak sebagai tangkapan semua ketika tidak ada pilihan eksplisit yang dapat dibuat. Kasus default ini diwakili dengan menyetel kunci respons integrasi dari`$default`.
+ Dalam semua kasus lain, kunci respons integrasi berfungsi sebagai ekspresi reguler. Ini harus mengikuti format`"/expression/"`.

Untuk integrasi HTTP non-proxy:
+ API Gateway akan mencoba mencocokkan kode status HTTP dari respons backend. Tombol respons integrasi akan berfungsi sebagai ekspresi reguler dalam kasus ini. Jika kecocokan tidak dapat ditemukan, `$default` maka dipilih sebagai respons integrasi.
+ Ekspresi pemilihan template, seperti dijelaskan di atas, berfungsi secara identik. Contoh:
  + `/2\d\d/`: Menerima dan mengubah tanggapan yang berhasil
  + `/4\d\d/`: Menerima dan mengubah kesalahan permintaan yang buruk
  + `$default`: Menerima dan mengubah semua tanggapan tak terduga

Untuk informasi selengkapnya tentang ekspresi pemilihan templat, lihat[Ekspresi pemilihan template](websocket-api-data-transformations.md#apigateway-websocket-api-template-selection-expressions).

## Menyiapkan respons integrasi menggunakan konsol API Gateway
<a name="apigateway-websocket-api-integration-response-using-console"></a>

Untuk menyiapkan respons integrasi rute untuk WebSocket API menggunakan konsol API Gateway:

1. Masuk ke konsol API Gateway di [https://console.aws.amazon.com/apigateway](https://console.aws.amazon.com/apigateway).

1.  Pilih WebSocket API Anda dan pilih rute Anda.

1. Pilih tab **Permintaan integrasi**, dan kemudian di bagian **Pengaturan respons integrasi**, pilih **Buat respons integrasi**.

1. Untuk **tombol Respons**, masukkan nilai yang akan ditemukan di kunci respons dalam pesan keluar setelah mengevaluasi ekspresi pemilihan respons. Misalnya, Anda dapat memasukkan **/4\$1d\$1d/** untuk menerima dan mengubah kesalahan permintaan buruk atau masuk **\$1default** untuk menerima dan mengubah semua respons yang cocok dengan ekspresi pemilihan templat. 

1. Untuk **ekspresi pemilihan Template**, masukkan ekspresi seleksi untuk mengevaluasi pesan keluar.

1. Pilih **Buat respons**.

1. Anda juga dapat menentukan template pemetaan untuk mengonfigurasi transformasi payload pesan yang dikembalikan. Pilih **Buat templat**.

1. Masukkan nama kunci. Jika Anda memilih ekspresi pemilihan template default, masukkan**\$1\$1default**.

1. Untuk **template Response**, masukkan template pemetaan Anda di editor kode.

1. Pilih **Buat templat**.

1. Pilih **Deploy API** untuk menerapkan API Anda.

 Gunakan perintah [wscat](https://www.npmjs.com/package/wscat) berikut untuk terhubung ke API Anda. Untuk informasi selengkapnya tentang `wscat`, lihat [Gunakan `wscat` untuk terhubung ke WebSocket API dan mengirim pesan ke sana](apigateway-how-to-call-websocket-api-wscat.md). 

```
wscat -c wss://api-id.execute-api.us-east-2.amazonaws.com/test
```

 Saat Anda memanggil rute Anda, muatan pesan yang dikembalikan akan kembali. 

## Siapkan respons integrasi menggunakan AWS CLI
<a name="apigateway-websocket-api-integration-response-using-awscli"></a>

[create-integration-response](https://docs.aws.amazon.com/cli/latest/reference/apigatewayv2/create-integration-response.html)Perintah berikut menciptakan respons `$default` integrasi:

```
aws apigatewayv2 create-integration-response \
    --api-id vaz7da96z6 \
    --integration-id a1b2c3 \
    --integration-response-key '$default'
```