Я пытался изменить тело ответа в лямбда-выражении, прежде чем вернуться к интерфейсу (Flutter). Однако я получил код состояния 500 внутренней ошибки сервера, хотя в моем журнале CloudWatch отображается печать только что созданного ответа.
мой лямбда-код, в котором я получил sample_json_response и попытался перестроить ответ с помощью нового списка (также пробовал с dict, но оба вернули тот же результат
# print(sample_json_response) ингредиент_ответ = json.dumps(inference_response['body']['ингредиенты']['предметы']) print('ответ ингредиента: ') печать (ingredient_response) # добавьте данные _id, чтобы вернуть уникальный идентификатор для идентификации результата documentdb unique_id = request_id + "-" + upload_timestamp результат = [] result.append("unique_id": unique_id) result.append("ingredient_response": Ingredient_response) print('обновленный результат:') печать (результат) После этого я возвращаю ответ с кодом состояния 200 и телом
return { 'код статуса': 200, 'тело': результат } Я проверил в своем журнале, что массив или карта напечатаны нормально, в моей лямбде ошибок тоже нет. На этом изображении показан новый массив, который я построил, только с добавлением дополнительных деталей.

Однако на моем флаттере появилась внутренняя ошибка сервера 500. когда я печатаю из ответа.statusCode, он показывает 500. Если я вернусь к исходному образцу ответа, все будет работать нормально.
По какой причине код состояния перезаписывается, когда я возвращаю тот же формат, но просто перестраиваю новый массив и пытаюсь добавить подробности?