Go语言go1.x运行时AWS CLI create-function的handler参数取值咨询
AWS Lambda Go1.x运行时handler参数配置
对于go1.x运行时的AWS Lambda函数,handler参数只需填写zip包内可执行文件的相对路径(以zip根目录为基准)。
结合你的场景:
- 若编译生成的
MyLambda可执行文件在zip包中的路径是bin/MyLambda,则handler参数填bin/MyLambda; - 若打包时将
MyLambda可执行文件直接放在zip根目录(比如把bin目录下的文件移到根目录再打包),则handler参数填MyLambda。
关键注意点
go1.x运行时的Lambda是直接执行你的可执行文件,因此你的Go代码必须包含main()函数,并在其中通过lambda.Start(MyHandleRequest)注册处理函数——这是Lambda能识别到MyHandleRequest的核心步骤,示例代码如下:
package main import ( "context" "github.com/aws/aws-lambda-go/lambda" ) type MyEvent struct { // 定义你的事件结构字段 } func MyHandleRequest(ctx context.Context, event MyEvent) (string, error) { // 你的业务处理逻辑 return "处理完成", nil } func main() { // 注册处理函数 lambda.Start(MyHandleRequest) }
AWS CLI命令示例
假设可执行文件位于zip包根目录,名为MyLambda,对应的create-function命令如下:
aws lambda create-function \ --function-name MyLambdaFunction \ --runtime go1.x \ --handler MyLambda \ --zip-file fileb://my-lambda-package.zip \ --role arn:aws:iam::123456789012:role/你的Lambda执行角色ARN
内容的提问来源于stack exchange,提问作者xpt
相关产品推荐
相关产品推荐

