Используя sam cli для генерации и запуска API для функции без сервера, я хочу разместить файл формы данных в теле запроса.К сожалению, я получаю «сообщение»: «Внутренняя ошибка сервера».
Идея состояла в том, чтобы изменить шаблон так, чтобы он принимал двоичные файлы, как указано в документах aws, но ничего не помогло.
Это мой файл шаблона (с добавлением поддержки бинарных типов носителей):
AWSTemplateFormatVersion: '2010-09-09' Преобразование: AWS :: Serverless-2016-10-31 Описание:> sam-app
Sample SAM Template for sam-app
Глобалы: Api: # Отправка / получение двоичных данных через API BinaryMediaTypes: - image ~ 1jpg
Function:
Timeout: 3
Ресурсы:
HelloWorldFunction:
Type: AWS::Serverless::Function # More info about Function Resource: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction
Properties:
CodeUri: hello_world/
Handler: app.lambdaHandler
Runtime: nodejs8.10
Environment: # More info about Env Vars: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#environment-object
Variables:
PARAM1: VALUE
Events:
HelloWorld:
Type: Api # More info about API Event Source: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#api
Properties:
Path: /hello
Method: post
Выходы:
HelloWorldApi:
Description: "API Gateway endpoint URL for Prod stage for Hello World function"
Value: !Sub "https://${ServerlessRestApi}.execute-api.${AWS::Region}.amazonaws.com/Prod/hello/"
HelloWorldFunction:
Description: "Hello World Lambda Function ARN"
Value: !GetAtt HelloWorldFunction.Arn
HelloWorldFunctionIamRole:
Description: "Implicit IAM Role created for Hello World function"
Value: !GetAtt HelloWorldFunctionRole.Arn