Я уже давно борюсь с этим.Мне нужно создать ресурс в API-шлюзе, связывающий с лямбда-функцией, которая принимает файл PDF в качестве входных данных, отправляемых как POST-запрос multipart / form-data.Для простоты, я просто сейчас возвращаю файл.
Когда я пытаюсь вызвать API со следующим скручиванием, я получаю Внутренняя ошибка сервера от AWS.Кому-нибудь удалось отправить файл pdf в Lambda без необходимости использовать трюк S3 (загрузить на S3)?
Заранее всем спасибо за любые подсказки.
Команды /Файлы:
curl
curl -vvv -X POST -H "Content-Type: multipart/form-data" -F "content=@file.pdf" https://...MYAPIHERE.../pdf
В настоящее время я использую serverless и python3.
Ниже приведены мои файлы:
Servelerlss.yaml
function:
pdf:
handler: handler.pdf
events:
- http:
path: /pdf
method: post
integration: lambda
request:
template:
application/json: "$input.json('$')"
response:
headers:
Content-Type: "'aplication/json'"
handler.py
def pdf(event, context):
pdf = event.get('content')
out = {'statusCode': 200,
'isBase64Encoded': False,
'headers': {"content-type": "application/json"},
'body': json.dumps({
'input': pdf,
'inputType': 'url',
#'tags': list(tags.keys()),
'error': None})}
return(out)