Ikhtisar WebSocket APIs di API Gateway - APIGerbang Amazon

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

Ikhtisar WebSocket APIs di API Gateway

Di API Gateway Anda dapat membuat frontend WebSocket API sebagai stateful untuk AWS layanan (seperti Lambda atau DynamoDB) atau untuk titik akhir. HTTP Ini WebSocket API memanggil backend Anda berdasarkan konten pesan yang diterimanya dari aplikasi klien.

Tidak seperti RESTAPI, yang menerima dan menanggapi permintaan, WebSocket API mendukung komunikasi dua arah antara aplikasi klien dan backend Anda. Backend dapat mengirim pesan callback ke klien yang terhubung.

Dalam JSON pesan masuk Anda WebSocket API diarahkan ke integrasi backend berdasarkan rute yang Anda konfigurasikan. (Non- JSON pesan diarahkan ke $default rute yang Anda konfigurasikan.)

Rute menyertakan kunci rute, yang merupakan nilai yang diharapkan setelah ekspresi pemilihan rute dievaluasi. routeSelectionExpressionIni adalah atribut yang didefinisikan pada API tingkat. Ini menentukan JSON properti yang diharapkan hadir dalam payload pesan. Untuk informasi selengkapnya tentang ekspresi pemilihan rute, lihatEkspresi pemilihan rute.

Misalnya, jika JSON pesan Anda berisi action properti, dan Anda ingin melakukan tindakan berbeda berdasarkan properti ini, ekspresi pemilihan rute Anda mungkin${request.body.action}. Tabel routing Anda akan menentukan tindakan mana yang akan dilakukan dengan mencocokkan nilai action properti terhadap nilai kunci rute kustom yang telah Anda tentukan dalam tabel.

Gunakan rute untuk WebSocket API

Ada tiga rute standar yang dapat digunakan:$connect,$disconnect, dan$default. Selain itu, Anda dapat membuat rute khusus.

  • APIGateway memanggil $connect rute ketika koneksi persisten antara klien dan a WebSocket API sedang dimulai.

  • APIGateway memanggil $disconnect rute ketika klien atau server terputus dari. API

  • APIGateway memanggil rute kustom setelah ekspresi pemilihan rute dievaluasi terhadap pesan jika rute yang cocok ditemukan; kecocokan menentukan integrasi mana yang dipanggil.

  • APIGateway memanggil $default rute jika ekspresi pemilihan rute tidak dapat dievaluasi terhadap pesan atau jika tidak ada rute yang cocok ditemukan.

Untuk informasi selengkapnya tentang $disconnect rute $connect dan rute, lihatMengelola pengguna yang terhubung dan aplikasi klien: $connect dan $disconnect rute.

Untuk informasi selengkapnya tentang $default rute dan rute khusus, lihatPanggil integrasi backend Anda dengan $default Rute dan rute khusus di Gateway API.

Mengirim data ke aplikasi klien yang terhubung

Layanan backend dapat mengirim data ke aplikasi klien yang terhubung. Anda dapat mengirim data dengan melakukan hal berikut:

  • Gunakan integrasi untuk mengirim respons, yang dikembalikan ke klien dengan respons rute yang telah Anda tentukan.

  • Anda dapat menggunakan @connections API untuk mengirim POST permintaan. Untuk informasi selengkapnya, lihat Gunakan @connections perintah di layanan backend Anda.