As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Api
O objeto que descreve um tipo de origem do evento Api. Se um recurso AWS::Serverless::Api for definido, os valores do caminho e do método devem corresponder a uma operação na definição de OpenAPI da API.
Se nenhum AWS::Serverless::Api for definido, a entrada e a saída da função serão uma representação da solicitação HTTP e da resposta HTTP.
Por exemplo, usando a JavaScript API, o código de status e o corpo da resposta podem ser controlados retornando um objeto com as chaves statusCode e body.
Sintaxe
Para declarar essa entidade em seu modelo AWS Serverless Application Model (AWS SAM), use a sintaxe a seguir.
YAML
Auth:ApiFunctionAuthMethod:StringPath:StringRequestModel:RequestModelRequestParameters:List of [ String | RequestParameter ]RestApiId:StringTimeoutInMillis:Integer
Propriedades
-
Auth -
Configuração de autenticação para essa Api+Path+Method específica.
Útil parar substituir a configuração
DefaultAuthorizerda API para um caminho individual, quando nenhumDefaultAuthorizerfor especificado, ou para substituir a configuração padrãoApiKeyRequired.Digite: ApiFunctionAuth
Obrigatório: não
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
-
Method -
Método HTTP para o qual essa função é invocada. As opções incluem
DELETEGET,HEADOPTIONS,PATCH,POST,PUT,,ANYe. Consulte Configurar um método HTTP no Guia do Desenvolvedor do API Gateway para obter detalhes.Type: string
Obrigatório: Sim
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
-
Path -
Caminho Uri para o qual essa função é invocada. Deve começar com
/.Tipo: string
Obrigatório: Sim
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
-
RequestModel -
Solicite o modelo a ser usado para essa Api+Path+Method específica. Isso deve fazer referência ao nome de um modelo especificado na seção
Modelsde um recurso AWS::Serverless::Api.Digite: RequestModel
Obrigatório: não
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
-
RequestParameters -
Solicite a configuração dos parâmetros para este Api+Path+Method específico. Todos os nomes de parâmetros devem começar com
method.requeste devem ser limitados amethod.request.header,method.request.querystringou amethod.request.path.Uma lista pode conter cadeias de caracteres de nomes de parâmetros e RequestParameterobjetos. Para cadeias de caracteres, as propriedades
RequiredeCachingserão padronizadas comofalse.Tipo: Lista de [String | RequestParameter]
Obrigatório: não
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
-
RestApiId -
Identificador de um RestApi recurso, que deve conter uma operação com o caminho e o método fornecidos. Normalmente, isso é definido para fazer referência a um recurso AWS::Serverless::Api definido nesse modelo.
Se você não definir essa propriedade, AWS SAM cria um AWS::Serverless::Api recurso padrão usando um
OpenApidocumento gerado. Esse recurso contém uma união de todos os caminhos e métodos definidos por eventosApino mesmo modelo que não especificam um arquivoRestApiId.Isso não pode fazer referência a um recurso AWS::Serverless::Api definido em outro modelo.
Tipo: string
Obrigatório: não
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
TimeoutInMillis-
Tempo limite personalizado entre 50 e 29.000 milissegundos.
nota
Quando você especifica essa propriedade, AWS SAM modifica sua definição de OpenAPI. A definição da OpenAPI deve ser especificada em linha usando a propriedade
DefinitionBody.Tipo: inteiro
Obrigatório: não
Padrão: 29.000 milissegundos ou 29 segundos
AWS CloudFormation compatibilidade: essa propriedade é exclusiva AWS SAM e não tem AWS CloudFormation equivalente.
Exemplos
Exemplo básico
YAML
Events: ApiEvent: Type: Api Properties: Path: /path Method: get RequestParameters: - method.request.header.Authorization - method.request.querystring.keyword: Required: true Caching: false