Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
InvokeWithResponseStream
Konfigurasikan fungsi Lambda Anda untuk mengalirkan muatan respons kembali ke klien. Untuk informasi selengkapnya, lihat Mengonfigurasi fungsi Lambda untuk mengalirkan respons.
Operasi ini memerlukan izin untuk InvokeFunction tindakan lambda:. Untuk detail tentang cara mengatur izin untuk pemanggilan lintas akun, lihat Memberikan akses fungsi ke akun lain.
Minta Sintaks
POST /2021-11-15/functions/FunctionName
/response-streaming-invocations?Qualifier=Qualifier
HTTP/1.1
X-Amz-Invocation-Type: InvocationType
X-Amz-Log-Type: LogType
X-Amz-Client-Context: ClientContext
Payload
Parameter Permintaan URI
Permintaan menggunakan parameter URI berikut.
- ClientContext
-
Hingga 3.583 byte data yang dikodekan base64 tentang klien pemanggilan untuk diteruskan ke fungsi dalam objek konteks.
- FunctionName
-
Nama fungsi Lambda.
Format nama
-
Nama fungsi —
my-function
. -
Fungsi ARN —.
arn:aws:lambda:us-west-2:123456789012:function:my-function
-
ARN Sebagian —.
123456789012:function:my-function
Batas panjang hanya berlaku untuk ARN penuh. Jika Anda hanya menentukan nama fungsi, panjang nama dibatasi hingga 64 karakter.
Panjang Batasan: Panjang minimum 1. Panjang maksimum 170.
Pola:
(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_\.]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?
Diperlukan: Ya
-
- InvocationType
-
Gunakan salah satu opsi berikut:
-
RequestResponse
(default) - Memanggil fungsi secara sinkron. Jaga agar koneksi tetap terbuka sampai fungsi mengembalikan respons atau waktu habis. Respons operasi API mencakup respons fungsi dan data tambahan. -
DryRun
— Validasi nilai parameter dan verifikasi bahwa pengguna atau peran IAM memiliki izin untuk memanggil fungsi.
Nilai yang Valid:
RequestResponse | DryRun
-
- LogType
-
Atur ke
Tail
untuk memasukkan log eksekusi dalam respons. Hanya berlaku untuk fungsi yang dipanggil secara sinkron.Nilai yang Valid:
None | Tail
- Qualifier
-
Nama alias.
Batasan Panjang: Panjang minimum 1. Panjang maksimum 128.
Pola:
(|[a-zA-Z0-9$_-]+)
Isi Permintaan
Permintaan menerima data biner berikut.
- Payload
-
JSON yang ingin Anda berikan ke fungsi Lambda Anda sebagai input.
Anda dapat memasukkan JSON secara langsung. Misalnya,
--payload '{ "key": "value" }'
. Anda juga dapat menentukan jalur file. Misalnya,--payload file://payload.json
.
Sintaksis Respons
HTTP/1.1 StatusCode
X-Amz-Executed-Version: ExecutedVersion
Content-Type: ResponseStreamContentType
Content-type: application/json
{
"InvokeComplete": {
"ErrorCode": "string",
"ErrorDetails": "string",
"LogResult": "string"
},
"PayloadChunk": {
"Payload": blob
}
}
Elemen Respons
Jika tindakan berhasil, layanan mengirimkan kembali respons HTTP berikut.
- StatusCode
-
Untuk permintaan yang berhasil, kode status HTTP berada dalam kisaran 200. Untuk tipe invokasi
RequestResponse
, kode status ini adalah 200. Untuk jenisDryRun
pemanggilan, kode status ini adalah 204.
Respons mengembalikan header HTTP berikut.
- ExecutedVersion
-
Versi fungsi yang dijalankan. Ketika Anda memanggil fungsi dengan alias, ini menunjukkan versi mana yang diselesaikan alias.
Panjang Batasan: Panjang minimum 1. Panjang maksimum 1024.
Pola:
(\$LATEST|[0-9]+)
- ResponseStreamContentType
-
Jenis data yang dikembalikan aliran.
Layanan mengembalikan data berikut dalam format JSON.
- InvokeComplete
-
Objek yang dikembalikan ketika aliran telah berakhir dan semua potongan muatan telah dikembalikan.
Tipe: Objek InvokeWithResponseStreamCompleteEvent
- PayloadChunk
-
Sebagian dari muatan respons yang dialirkan.
Tipe: Objek InvokeResponseStreamUpdate
Kesalahan
Untuk informasi tentang kesalahan yang umum untuk semua tindakan, lihat Kesalahan Umum.
- EC2AccessDeniedException
-
Perlu izin tambahan untuk mengkonfigurasi pengaturan VPC.
Kode Status HTTP: 502
- EC2ThrottledException
-
Amazon EC2 dibatasi AWS Lambda selama inisialisasi fungsi Lambda menggunakan peran eksekusi yang disediakan untuk fungsi tersebut.
Kode Status HTTP: 502
- EC2UnexpectedException
-
AWS Lambdamenerima pengecualian klien Amazon EC2 yang tidak terduga saat menyiapkan fungsi Lambda.
Kode Status HTTP: 502
- EFSIOException
-
Terjadi kesalahan saat membaca dari atau menulis ke sistem file yang terhubung.
Kode Status HTTP: 410
- EFSMountConnectivityException
-
Fungsi Lambda tidak dapat membuat koneksi jaringan ke sistem file yang dikonfigurasi.
Kode Status HTTP: 408
- EFSMountFailureException
-
Fungsi Lambda tidak dapat memasang sistem file yang dikonfigurasi karena masalah izin atau konfigurasi.
Kode Status HTTP: 403
- EFSMountTimeoutException
-
Fungsi Lambda membuat koneksi jaringan ke sistem file yang dikonfigurasi, tetapi waktu operasi pemasangan habis.
Kode Status HTTP: 408
- ENILimitReachedException
-
AWS Lambdatidak dapat membuat elastic network interface di VPC, yang ditentukan sebagai bagian dari konfigurasi fungsi Lambda, karena batas untuk antarmuka jaringan telah tercapai. Untuk informasi lebih lanjut, lihat Kuota Lambda.
Kode Status HTTP: 502
- InvalidParameterValueException
-
Salah satu parameter dalam permintaan tidak valid.
Kode Status HTTP: 400
- InvalidRequestContentException
-
Isi permintaan tidak dapat diurai sebagai JSON.
Kode Status HTTP: 400
- InvalidRuntimeException
-
Runtime atau versi runtime yang ditentukan tidak didukung.
Kode Status HTTP: 502
- InvalidSecurityGroupIDException
-
ID grup keamanan yang disediakan dalam konfigurasi VPC fungsi Lambda tidak valid.
Kode Status HTTP: 502
- InvalidSubnetIDException
-
ID subnet yang disediakan dalam konfigurasi VPC fungsi Lambda tidak valid.
Kode Status HTTP: 502
- InvalidZipFileException
-
AWS Lambda tidak dapat membuka zip paket deployment.
Kode Status HTTP: 502
- KMSAccessDeniedException
-
Lambda tidak dapat mendekripsi variabel lingkungan karena AWS KMS akses ditolak. Periksa izin KMS fungsi Lambda.
Kode Status HTTP: 502
- KMSDisabledException
-
Lambda tidak dapat mendekripsi variabel lingkungan karena yang digunakan dinonaktifkan. AWS KMS key Periksa pengaturan kunci KMS fungsi Lambda.
Kode Status HTTP: 502
- KMSInvalidStateException
-
Lambda tidak dapat mendekripsi variabel lingkungan karena status yang AWS KMS key digunakan tidak valid untuk Dekripsi. Periksa pengaturan kunci KMS fungsi.
Kode Status HTTP: 502
- KMSNotFoundException
-
Lambda tidak dapat mendekripsi variabel lingkungan karena tidak ditemukan. AWS KMS key Periksa pengaturan kunci KMS fungsi.
Kode Status HTTP: 502
- RecursiveInvocationException
-
Lambda telah mendeteksi fungsi Anda dipanggil dalam loop rekursif dengan AWS sumber daya lain dan menghentikan pemanggilan fungsi Anda.
Kode Status HTTP: 400
- RequestTooLargeException
-
Muatan permintaan melebihi kuota input JSON badan
Invoke
permintaan. Untuk informasi lebih lanjut, lihat Kuota Lambda.Kode Status HTTP: 413
- ResourceConflictException
-
Sumber daya sudah ada, atau operasi lain sedang berlangsung.
Kode Status HTTP: 409
- ResourceNotFoundException
-
Sumber daya yang ditentukan dalam permintaan tidak ada.
Kode Status HTTP: 404
- ResourceNotReadyException
-
Fungsi ini tidak aktif dan koneksi VPC-nya tidak lagi tersedia. Tunggu sampai koneksi VPC dibangun kembali dan coba lagi.
Kode Status HTTP: 502
- ServiceException
-
Layanan AWS Lambda mengalami kesalahan internal.
Kode Status HTTP: 500
- SnapStartException
-
afterRestore()
Runtime hook mengalami kesalahan. Untuk informasi lebih lanjut, periksa CloudWatch log Amazon.Kode Status HTTP: 400
- SnapStartNotReadyException
-
Lambda menginisialisasi fungsi Anda. Anda dapat memanggil fungsi ketika status fungsi menjadi
Active
.Kode Status HTTP: 409
- SnapStartTimeoutException
-
Lambda tidak dapat memulihkan snapshot dalam batas waktu tunggu.
Kode Status HTTP: 408
- SubnetIPAddressLimitReachedException
-
AWS Lambdatidak dapat mengatur akses VPC untuk fungsi Lambda karena satu atau beberapa subnet yang dikonfigurasi tidak memiliki alamat IP yang tersedia.
Kode Status HTTP: 502
- TooManyRequestsException
-
Batas throughput permintaan terlampaui. Untuk informasi lebih lanjut, lihat Kuota Lambda.
Kode Status HTTP: 429
- UnsupportedMediaTypeException
-
Tipe konten dari isi permintaan
Invoke
bukan JSON.Kode Status HTTP: 415
Lihat Juga
Untuk informasi selengkapnya tentang penggunaan API ini di salah satu AWS SDK khusus bahasa, lihat berikut ini: