Как отправить простой текст в POST-запросе через API Gateway AWS - PullRequest
1 голос
/ 23 октября 2019

Я новичок во всей вселенной AWS и пытаюсь создать простой / тестовый API. Я хотел бы отправить простой текст в теле запроса POST, но не могу.

Запрос - https://976c9euh34.execute -api.us-east-1.amazonaws.com / prod/ move / send

Я получаю ответ:

{
    "message": "Could not parse request body into json: Unrecognized token \'test\': was expecting \'null\', \'true\', \'false\' or NaN\n at [Source: (byte[])\"test\"; line: 1, column: 9]"
}

, если я отправляю POST с "тестовым" телом. Я пытался поставить Content-Type: plain/text или обычный / HTML, но не удалось. В лямбде я не пытаюсь работать с json. Допустим, теперь моя лямбда выглядит так:

def lambda_handler(event, context):
    file_path = str(time.time()) + '.txt'
    s3 = boto3.client('s3')
    data = "hello world"
    try:
        s3_response = s3.put_object(Bucket=BUCKET_NAME, Key=file_path, Body=data)
    except Exception as e:
        raise IOError(e)
    return {
        'statusCode': 200,
        'body': {
            'data': data
        }
    }

Я вижу некоторые связанные параметры в запросе на интеграцию, такие как

Integration Request parameter

, ноони никак не влияют.

Как мне решить эту проблему? Где мне нужно посмотреть?

UPD:

Отображение предупреждения:

enter image description here

PS: если я поставлю json body, то все будет нормально

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...