本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
Api
描述Api事件源类型。如果AWS::Serverless::Api资源已定义,路径和方法值必须与 API 的 OpenAPI 定义中的操作对应。
如果没有AWS::Serverless::Api被定义,函数输入和输出是 HTTP 请求和 HTTP 响应的表示。
例如,使用 JavaScript API,可以通过返回带有 StatusCode 和 body 键的对象来控制响应的状态代码和正文。
语法
要在Amazon Serverless Application Model(Amazon SAM) 模板,请使用以下语法。
YAML
Auth:ApiFunctionAuthMethod:StringPath:StringRequestModel:RequestModelRequestParameters:String | RequestParameterRestApiId:String
属性
-
Auth -
此特定 Api + 路径 + 方法的身份验证配置。
对于覆盖 API 很有用
DefaultAuthorizer否则在单个路径上设置 auth 配置DefaultAuthorizer已指定或覆盖默认值ApiKeyRequired设置。必需:否
Amazon CloudFormation兼容性:该属性对是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
Method -
调用此函数的 HTTP 方法。
类型:字符串
必需:是
Amazon CloudFormation兼容性:该属性对是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
Path -
调用此函数的 Uri 路径。必须从开始
/.类型:字符串
必需:是
Amazon CloudFormation兼容性:该属性对是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
RequestModel -
请求模型用于此特定的 Api + 路径 + 方法。这应该引用中指定的模型的名称。
Models的部分AWS::Serverless::Api资源。类型:RequestModel
必需:否
Amazon CloudFormation兼容性:该属性对是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
RequestParameters -
请求此特定的 Api + 路径 + 方法的参数配置。所有参数名称必须以开头
method.request并且必须限于method.request.header、method.request.querystring,或者method.request.path.如果参数是字符串而不是函数请求参数对象,那么
Required和Caching将默认为 false。类型:String |RestParameters
必需:否
Amazon CloudFormation兼容性:该属性对是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
-
RestApiId -
RestApi 资源的标识符,该资源必须包含具有给定路径和方法的操作。通常,将其设置为引用AWS::Serverless::Api在此模板中定义的资源。
如果不定义此属性,Amazon SAM创建默认值AWS::Serverless::Api使用生成的资源
OpenApi文档. 该资源包含所有路径和方法的联合Api同一模板中未指定RestApiId.这不能引用AWS::Serverless::Api在另一个模板中定义的资源。
类型:字符串
必需:否
Amazon CloudFormation兼容性:该属性对是唯一的Amazon SAM而且没有Amazon CloudFormation等效项
示例
apeVent
Api 事件的例子
YAML
Events: ApiEvent: Type: Api Properties: Path: /path Method: get RequestParameters: - method.request.header.Authorization