通过CloudFormation创建空AWS Lambda报错:Code字段类型不符
CloudFormation创建Lambda报错:Code字段类型错误的解决方法
- 错误根源:CloudFormation对Lambda资源的
Code属性有明确要求——它必须是JSON对象,但你把这个字段写成了字符串,直接触发了类型验证失败的报错。 - 正确配置分两种场景:
- 内联空函数(适合简单测试场景):把代码内容放在
Code对象的ZipFile属性下,示例配置:ldocarchiverLambda: Type: AWS::Lambda::Function Properties: Runtime: nodejs18.x # 替换成你实际使用的运行时 Handler: index.handler Role: !GetAtt LambdaExecutionRole.Arn # 替换为你的Lambda执行角色ARN Code: ZipFile: | exports.handler = async (event) => { // 空函数逻辑,可按需修改 return { statusCode: 200, body: JSON.stringify('Empty Lambda executed'), }; }; - 用S3托管代码包:如果你的Lambda代码打包存在S3桶里,
Code对象需要包含S3Bucket和S3Key两个属性,示例:ldocarchiverLambda: Type: AWS::Lambda::Function Properties: Runtime: nodejs18.x Handler: index.handler Role: !GetAtt LambdaExecutionRole.Arn Code: S3Bucket: your-s3-bucket-name S3Key: lambda-packages/empty-lambda.zip
- 内联空函数(适合简单测试场景):把代码内容放在
- 修正你的配置:对照上面的格式,把原来直接写字符串的
Code字段,改成包含对应属性的JSON对象即可解决报错。
内容的提问来源于stack exchange,提问作者Seba
相关产品推荐
相关产品推荐

