このチュートリアルでは、Go を使用してコミュニティ Cloud Functions を開発およびデプロイする方法、つまりプロジェクトの設定と Cloud Functions API の有効化について説明します。 Go 関数を記述し、コードを含むファイルを作成します。関数をコンパイルしてデプロイします。 cURL を使用して関数をテストします。エラーを処理し、適切な応答コードを返します。
Go 関数開発のコミュニティ チュートリアル
このチュートリアルでは、Go 言語を使用して関数を開発する方法と、それらをコミュニティ ランタイム環境にデプロイします。プロセスを段階的に説明し、実際のケースを示しますので、ご自身で体験していただけます。
前提条件
ステップ 1: Cloud Functions プロジェクトを設定する
新しい Google Cloud プロジェクトを作成します:
gcloud projects create my-functions-project
Cloud Functions API を有効にする:
gcloud services enable cloudfunctions.googleapis.com
ステップ 2: Go 関数を作成する
という名前のファイルを作成しますhello_world.go
に移動し、次のコードを入力します:
package main import ( "context" "fmt" "log" "github.com/cloudevents/sdk-go/v2/event" ) func HelloFunction(ctx context.Context, e event.Event) error { msg := e.Data() if msg != nil { s := string(msg) log.Printf("Function invoked with data: %s", s) return fmt.Errorf("function failed with message: %s", s) } msg = []byte("Hello World!") log.Print("Function invoked without data") return e.Respond(200, msg, event.ResultOK) }
ステップ 3: 関数をコンパイルしてデプロイする
関数をコンパイルします:
go build hello_world.go
gcloud functions deploy hello_world \ --runtime go113 \ --entry-point HelloFunction \ --trigger-http \ --service-account my-service-account@my-functions-project.iam.gserviceaccount.com
#関数をテストしますcURL を使用:
curl https://<REGION>-<PROJECT_ID>.cloudfunctions.net/hello_world「Hello World!」という応答が表示されるはずです。
ステップ 5: エラーの処理
以前のサンプル関数は、無効なデータを受け取ったときにエラーを返しました。 e.Data()
:if e.Data() == nil { return e.Respond(400, nil, event.ResultFailedPrecondition) }の型を調べることで、データが存在するかどうかを確認できます。
以上がgolang 関数開発に関するコミュニティ チュートリアルの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。