Я следовал руководству по настройке Telegram Bot через AWS, поэтому после подготовки функции (и API шлюза) для обработки простого бота, который отвечает тем же сообщением, я наткнулся на KeyError в слове «body».Вот код:
import json
from botocore.vendored import requests
TELE_TOKEN='700794743:AAFtypDtqP3-dOMC5dSX7DqtwVRGNuKZhH8'
URL = "https://api.telegram.org/bot{}".format(TELE_TOKEN)
def send_message(text, chat_id):
final_text = "You said: " + text
url = URL + "/sendMessage?text={}&chat_id={}".format(final_text, chat_id)
requests.get(url)
def lambda_handler(event, context):
message = json.loads(event['body'])
chat_id = message['message']['chat']['id']
reply = message['message']['text']
send_message(reply, chat_id)
return {
'statusCode': 200
}
'body': KeyError Traceback (последний из последних вызовов): файл "/var/task/lambda_function.py", строка 13, в сообщении lambda_handler = json.loads (событие['body']) KeyError: 'body'
Я не знаю, что может быть не так, может быть, файл json 'event' на самом деле не имеет параметра 'body'?Любая помощь с этим будет оценена!