这个错误通常是由于在CloudFormation模板中未正确定义输出属性所导致的。在AWS SAM模板中,Outputs属性是可选的,但对于通常使用的AWS CloudFormation模板而言非常重要。要解决此错误,需要确保在AWS SAM模板中正确指定Outputs属性。以下是正确设置输出属性的AWS SAM模板示例:
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
HelloWorldFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
Runtime: nodejs12.x
CodeUri: .
HelloWorldApi:
Type: AWS::Serverless::Api
Properties:
StageName: Prod
Outputs:
HelloWorldApi:
Value: !Sub "https://${ServerlessRestApi}.execute-api.${AWS::Region}.amazonaws.com/Prod/hello/"
在此示例中,我们在Outputs部分中定义了一个名为HelloWorldApi的输出,该输出提供由AWS Serverless API网关公开的URL。
注意:此示例假定您已经正确安装并配置了AWS SAM CLI并拥有AWS CLI密钥和访问权限。