Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Referensi ini menunjukkan cara menyambungkan ke Azure Event Grid menggunakan pemicu dan pengikatan Azure Functions.
Event Grid adalah layanan Azure yang mengirimkan permintaan HTTP untuk memberi tahu Anda tentang aktivitas yang terjadi di penerbit. Penerbit adalah layanan atau sumber daya yang mengawali peristiwa. Misalnya, akun penyimpanan blob Azure adalah penerbit, dan unggahan atau penghapusan blob adalah aktivitas. Beberapa layanan Azure memiliki dukungan bawaan untuk menerbitkan aktivitas ke Event Grid.
Penanganan aktivitas menerima dan memproses aktivitas. Azure Functions adalah satu dari beberapa layanan Azure yang memiliki dukungan bawaan untuk menangani aktivitas Event Grid. Functions menyediakan pemicu Event Grid, yang memanggil fungsi saat peristiwa diterima dari Event Grid. Pengikatan output serupa dapat digunakan untuk mengirim peristiwa dari fungsi Anda ke topik kustom Event Grid.
Anda juga dapat menggunakan pemicu HTTP untuk menangani Peristiwa Event Grid. Untuk mempelajari selengkapnya, lihat Menerima peristiwa ke titik akhir HTTP. Kami menyarankan untuk menggunakan pemicu Event Grid dibandingkan pemicu HTTP.
| Perbuatan | Jenis |
|---|---|
| Menjalankan fungsi saat aktivitas Event Grid dikirim | Pemicu |
| Mengirim aktivitas Event Grid | Pengikatan output |
| Mengontrol kode status HTTP yang dikembalikan | Titik akhir HTTP |
Menginstal ekstensi
Paket NuGet ekstensi yang Anda instal bergantung pada mode C# yang Anda gunakan di aplikasi fungsi Anda:
Functions dijalankan dalam proses pekerja C# yang terisolasi. Untuk mempelajari selengkapnya, lihat Panduan untuk menjalankan C# Azure Functions dalam proses pekerja yang terisolasi.
Fungsionalitas ekstensi tersebut bervariasi tergantung pada versi ekstensi:
Tambahkan ekstensi ke proyek Anda dengan menginstal paket NuGet, versi 3.x.
Memasang bundel
Agar dapat menggunakan ekstensi pengikatan ini di aplikasi Anda, pastikan file host.json di akar proyek Anda berisi referensi ini extensionBundle :
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Dalam contoh ini, version nilai [4.0.0, 5.0.0) menginstruksikan host Functions untuk menggunakan versi bundel yang setidaknya 4.0.0 tetapi kurang dari 5.0.0, yang mencakup semua versi potensial 4.x. Notasi ini secara efektif mempertahankan aplikasi Anda pada versi minor terbaru yang tersedia dari bundel ekstensi v4.x.
Jika memungkinkan, Anda harus menggunakan versi utama bundel ekstensi terbaru dan memungkinkan runtime untuk secara otomatis mempertahankan versi minor terbaru. Anda dapat melihat konten bundel terbaru pada halaman rilis bundel ekstensi. Untuk informasi selengkapnya, lihat Bundel ekstensi Azure Functions.
Pertimbangan untuk ekstensi Event Grid:
- Versi ekstensi Event Grid yang lebih lama dari 3.x tidak mendukung skema CloudEvents. Untuk menggunakan skema ini, sebagai gantinya gunakan pemicu HTTP.
- Pengikatan output Azure Event Grid hanya tersedia untuk Functions 2.x dan yang lebih tinggi.
Jenis pengikatan
Jenis pengikatan yang didukung untuk .NET bergantung pada versi ekstensi dan mode eksekusi C#, yang dapat menjadi salah satu hal berikut:
Pustaka kelas proses pekerja terisolasi yang dikompilasi fungsi C# berjalan dalam proses yang diisolasi dari runtime.
Pilih versi untuk melihat detail jenis pengikatan untuk mode dan versi.
Proses pekerja yang terisolasi mendukung jenis parameter sesuai dengan tabel di bawah ini. Dukungan untuk mengikat ke Stream, dan ke jenis dari Azure.Messaging sedang dalam pratinjau.
Pemicu Event Grid
Saat Anda ingin fungsi memproses satu peristiwa, pemicu Event Grid dapat mengikat ke jenis berikut:
| Jenis | Deskripsi |
|---|---|
| Jenis yang bisa diserialisasikan JSON | Functions mencoba mendeserialisasi data JSON peristiwa ke dalam jenis objek CLR (POCO) yang berusia biasa. |
string |
Peristiwa sebagai string. |
| BinaryData1 | Byte pesan peristiwa. |
| CloudEvent1 | Objek peristiwa. Gunakan saat Event Grid dikonfigurasi untuk mengirimkan menggunakan skema CloudEvents. |
| EventGridEvent1 | Objek peristiwa. Gunakan saat Event Grid dikonfigurasi untuk mengirimkan menggunakan skema Event Grid. |
Saat Anda ingin fungsi memproses batch peristiwa, pemicu Event Grid dapat mengikat ke jenis berikut:
| Jenis | Deskripsi |
|---|---|
CloudEvent[]
1,EventGridEvent[]
1,string[],BinaryData[]
1 |
Array peristiwa dari batch. Setiap entri mewakili satu peristiwa. |
1 Untuk menggunakan jenis ini, Anda perlu mereferensikan Microsoft.Azure.Functions.Worker.Extensions.EventGrid 3.3.0 atau yang lebih baru dan dependensi umum untuk pengikatan jenis SDK.
Pengikatan output Event Grid
Saat Anda ingin fungsi menulis satu peristiwa, pengikatan output Event Grid dapat mengikat ke jenis berikut:
| Jenis | Deskripsi |
|---|---|
string |
Peristiwa sebagai string. |
byte[] |
Byte pesan peristiwa. |
| Jenis yang bisa diserialisasikan JSON | Objek yang mewakili peristiwa JSON. Functions mencoba menserialisasikan jenis objek CLR (POCO) lama biasa ke dalam data JSON. |
Saat Anda ingin fungsi menulis beberapa peristiwa, pengikatan output Event Grid dapat mengikat ke jenis berikut:
| Jenis | Deskripsi |
|---|---|
T[] di mana T adalah salah satu jenis peristiwa tunggal |
Array yang berisi beberapa peristiwa. Setiap entri mewakili satu peristiwa. |
Untuk skenario output lainnya, buat dan gunakan EventGridPublisherClient dengan jenis lain dari Azure.Messaging.EventGrid secara langsung. Lihat Mendaftarkan klien Azure untuk contoh penggunaan injeksi dependensi untuk membuat jenis klien dari Azure SDK.
Pengaturan host.json
Pemicu Event Grid menggunakan permintaan HTTP webhook, yang dapat dikonfigurasi menggunakan pengaturan host.json yang sama dengan Pemicu HTTP.
Langkah berikutnya
- Jika Anda memiliki pertanyaan, kirimkan masalah ke tim di sini
- Pemicu Event Grid
- Pengikatan output Event Grid
- Menjalankan fungsi saat aktivitas Event Grid dikirim
- Mengirim aktivitas Event Grid