Bahasa .NET
Anda dapat menulis fungsi menggunakan bahasa .NET yang berbeda (C#, Visual Basic, atau F#). Tugas intinya sama untuk semua bahasa—Anda membuat class yang mengimplementasikan salah satu antarmuka Functions Framework:
IHttpFunction
ICloudEvent<T>
generikICloudEvent
non-generik
Dokumen ini menyediakan contoh untuk F# dan Visual Basic.
Template
Perhatikan bahwa untuk menjalankan contoh dalam dokumen ini, Anda akan menggunakan template:
Instal .NET SDK.
Instal paket template:
dotnet new install Google.Cloud.Functions.Templates
Template disediakan untuk tiga jenis fungsi di C# (default), F#, dan Visual Basic. Saat membuat project baru dari template, tentukan -lang f#
untuk membuat project F#, atau -lang vb
untuk membuat project Visual Basic. Misalnya, untuk membuat fungsi CloudEvent tak berjenis baru untuk Visual Basic, Anda akan menjalankan:
dotnet new gcf-untyped-event -lang vb
Untuk contoh F# dan Visual Basic, lihat Bahasa .NET.
Contoh fungsi HTTP
Anda menggunakan fungsi HTTP ketika ingin memanggil fungsi melalui permintaan HTTP(S). Contoh berikut menampilkan pesan "Hello World!"
File project untuk contoh HTTP
Berikut adalah file project untuk contoh di atas:
Men-deploy fungsi HTTP
gcloud functions deploy fsharp-helloworld --entry-point HelloWorldFSharp.Function --runtime dotnet8 --trigger-http --allow-unauthenticated
gcloud functions deploy vb-helloworld --entry-point HelloWorldVb.CloudFunction --runtime dotnet8 --trigger-http --allow-unauthenticated
Contoh CloudEvent
Anda menggunakan fungsi CloudEvent saat ingin Cloud Run Function dipanggil secara tidak langsung sebagai respons terhadap peristiwa asinkron, seperti pesan pada topik Pub/Sub, perubahan dalam bucket Cloud Storage, atau peristiwa Firebase.
Men-deploy fungsi CloudEvent
gcloud functions deploy fsharp-hello-pubsub --entry-point HelloPubSubFSharp.Function --runtime dotnet8 --trigger-topic my-topic --allow-unauthenticated
gcloud functions deploy vb-hello-pubsub --entry-point HelloPubSubVb.CloudFunction --runtime dotnet8 --trigger-topic my-topic --allow-unauthenticated
Menguji contoh CloudEvent
Anda dapat menguji contoh CloudEvent sebagai berikut:
Publikasikan pesan ke topik Pub/Sub untuk memicu fungsi Anda:
gcloud pubsub topics publish my-topic --message Flurry
Lihat log:
gcloud functions logs read --limit 10
Anda akan melihat sesuatu seperti ini, dengan pesan yang menyertakan nama yang Anda publikasikan ke topik Pub/Sub:
D my-function ... Function execution started
I my-function ... Hello Flurry!
D my-function ... Function execution took 39 ms, finished with status: 'ok'