我正在使用無伺服器 WarmUp 外掛程式來讓我的 Go AWS Lambda 函數保持溫暖。我需要檢測插件何時呼叫 Lambda 函數,以便我可以傳回特定回應。如何正確檢測 Go 程式碼中的預熱呼叫?
您可以透過檢查客戶端上下文來檢測go aws lambda 函數中的預熱調用,這可以使用aws lambda 的go sdk 中的lambdacontext包來完成。下面的程式碼片段展示瞭如何執行此操作:
package main import ( "context" "github.com/aws/aws-lambda-go/events" "github.com/aws/aws-lambda-go/lambda" "github.com/aws/aws-lambda-go/lambdacontext" ) func HandleRequest(ctx context.Context, request events.APIGatewayProxyRequest) (events.APIGatewayProxyResponse, error) { lc, _ := lambdacontext.FromContext(ctx) if lc.ClientContext.Custom["source"] == "serverless-plugin-warmup" { return events.APIGatewayProxyResponse{Body: "Lambda is warm!", StatusCode: 200}, nil } // ... other function logic ... // Default response for demonstration return events.APIGatewayProxyResponse{ StatusCode: 200, Body: "Hello from Go Lambda!", }, nil } func main() { lambda.Start(HandleRequest) }
以上是如何使用無伺服器 WarmUp 外掛程式偵測 Go AWS Lambda 函數中的預熱呼叫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!