Использование приложения SAM, как определить шаблоны отображения тела - PullRequest
0 голосов
/ 05 июля 2018

Я новичок в AWS и SAM. Я занимаюсь разработкой фиктивного бэкэнда с использованием сервисов AWS. Для этого я использую приложение SAM для написания кода локально. Я определил структуру API s и Lambda в этом как

AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: >
    sam-app

    Sample SAM Template for sam-app

Globals:
    Function:
        Timeout: 300
    Api:
        Cors:
            AllowHeaders: "'content-type, authorization'"
            AllowOrigin: "'*'"


Resources:

    HelloWorldFunction:
        Type: AWS::Serverless::Function
        Properties:
            CodeUri: hello_world
            Handler: app.lambda_handler
            Runtime: nodejs8.10
            Environment:
                Variables:
                    PARAM1: VALUE
            Events:
                HelloWorld:
                    Type: Api
                    Properties:
                        Path: /hello2
                        Method: get

Outputs:
    HelloWorldFunction:
      Description: "Hello World Lambda Function ARN"
      Value: !GetAtt HelloWorldFunction.Arn

Это создает маленькое фиктивное приложение. Но я хочу знать, как использовать другие утилиты AWS, такие как Body Mapping, определение модели и т. Д. Пожалуйста, помогите мне узнать это.

Спасибо ...

1 Ответ

0 голосов
/ 10 июля 2018

Вы можете определять модели и т. Д., Используя определение API Gateway Swagger. Это может быть встроено в шаблон SAM или размещено в S3 и на него ссылается шаблон SAM

Базовый пример выглядит так:

RestApi:
    Type: AWS::Serverless::Api
    Properties:
        DefinitionBody:       
            <add Swagger definition here>

См. https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessapi, чтобы узнать о параметрах конфигурации шлюза SAM API.

Некоторые примеры SAM + API Gateway + Swagger приведены по адресу:

...