ALIYUN::FC::FunctionInvoker digunakan untuk memanggil fungsi.
Sintaksis
{
"Type": "ALIYUN::FC::FunctionInvoker",
"Properties": {
"Qualifier": String,
"ServiceName": String,
"ExecuteVersion": Integer,
"Async": Boolean,
"Event": String,
"FunctionName": String,
"CheckError": Boolean,
"ServiceRegionId": String,
"CheckAsyncInvocation": Map
}
}Properti
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Batasan |
ServiceName | String | Ya | Ya | Nama dari layanan. | Nama harus memiliki panjang antara 1 hingga 128 karakter. |
FunctionName | String | Ya | Ya | Nama dari fungsi. | Tidak ada. |
Async | Boolean | Tidak | Ya | Menentukan apakah akan mengaktifkan fitur pemanggilan asinkron. | Nilai yang valid:
|
Event | String | Tidak | Ya | Properti input kustom dari fungsi. | Nilai tersebut dienkripsi sebagai string UTF-8 dan diteruskan ke fungsi selama eksekusi fungsi. Jika Anda ingin meneruskan nilai sebagai string biner atau string non-UTF-8, enkode nilai tersebut dalam Base64 sebelum meneruskannya ke fungsi. |
Qualifier | String | Tidak | Ya | Versi dari layanan. | Nilai yang valid:
|
ExecuteVersion | Integer | Tidak | Ya | Versi pengenal untuk fungsi yang akan dipanggil. Jika Anda menentukan properti ini saat membuat sumber daya, fungsi akan dipanggil. Jika tidak, fungsi tidak akan dipanggil. Jika Anda mengubah nilai properti dan nilai yang diubah adalah bilangan bulat saat Anda memperbarui sumber daya, fungsi akan dipanggil. Jika tidak, fungsi tidak akan dipanggil. | Tidak ada. |
CheckError | Boolean | Tidak | Tidak | Menentukan apakah akan memeriksa hasil pemanggilan. | Nilai yang valid:
|
ServiceRegionId | String | Tidak | Tidak | ID wilayah dari layanan fungsi. | Tidak ada. |
CheckAsyncInvocation | Map | Tidak | Tidak | Konfigurasi pemeriksaan pada pemanggilan asinkron. | Untuk informasi lebih lanjut, lihat bagian "Properti CheckAsyncInvocation" dari topik ini. |
Sintaksis CheckAsyncInvocation
"CheckAsyncInvocation": {
"Enabled": Boolean,
"CheckInterval": Integer,
"CheckTimes": Integer
}Properti CheckAsyncInvocation
Properti | Tipe | Diperlukan | Dapat Diedit | Deskripsi | Batasan |
Enabled | Boolean | Ya | Tidak | Menentukan apakah akan memeriksa hasil pemanggilan asinkron. | Jika Anda menyetel properti ini dan Async ke true, sistem akan membuat sumber daya setelah pemanggilan asinkron selesai dan hasil pemanggilan asinkron diperiksa. Nilai default: false. |
CheckInterval | Integer | Ya | Tidak | Interval waktu antara dua pemeriksaan berturut-turut pada hasil pemanggilan asinkron. | Nilai default: 10. Satuan: detik. |
CheckTimes | Integer | Ya | Tidak | Jumlah pemeriksaan pada hasil pemanggilan asinkron. | Nilai default: 10. |
Nilai Kembali
Fn::GetAtt
ResultType:
Jika Async disetel ke true dan ResultType disetel ke NoResult, tidak ada hasil yang dikembalikan.
Jika Async disetel ke false dan ResultType disetel ke Success, pemanggilan berhasil.
Jika Async disetel ke false dan ResultType disetel ke Failure, pemanggilan gagal.
Result:
Jika ResultType disetel ke NoResult, nilai dari Result adalah null.
Jika ResultType disetel ke Success, nilai dari Result adalah hasil pemanggilan fungsi. Anda dapat menafsirkan hasil berdasarkan implementasi fungsi. Hasil yang dikembalikan harus berupa string yang dienkripsi dalam UTF-8. Jika tidak, pemanggilan fungsi gagal. Jika hasil yang akan dikembalikan adalah string biner atau string non-UTF-8, hasil tersebut harus dienkripsi dalam Base64 sebelum dikembalikan.
Jika ResultType disetel ke Failure, pesan kesalahan akan dikembalikan untuk Result.
Contoh
ROSTemplateFormatVersion: '2015-09-01'
Parameters: {}
Resources:
FunctionInvoker:
Type: ALIYUN::FC::FunctionInvoker
Properties:
ServiceName: mytest
FunctionName: PythonFunc
ExecuteVersion: 1
Outputs: {}{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
},
"Resources": {
"FunctionInvoker": {
"Type": "ALIYUN::FC::FunctionInvoker",
"Properties": {
"ServiceName": "mytest",
"FunctionName": "PythonFunc",
"ExecuteVersion": 1.0
}
}
},
"Outputs": {
}
}