Ошибка автономного ответа сервера при отправке ответа JSON в лямбда-функции
var result = [{
count : 10,
data : [{"id":11,"id":22}]
}];
var response = {
statusCode: 200,
count: result.length,
body: result
};
callback(null, response);
Ошибка на консоли
В соответствии со спецификациями API Gateway содержание тела должно быть строковым. Проверьте свой лямбда-ответ и убедитесь, что вы вызываете JSON.stringify(YOUR_CONTENT) для вашего тела объекта
1 ответ
Решение
Ошибка здесь дает вам решение.
Обратный вызов API Gateway ожидает строку, а не объект javascript. Вы должны преобразовать это в строку перед передачей в обратный вызов:
var result = [{
count : 10,
data : [{"id":11,"id":22}]
}];
var response = {
statusCode: 200,
count: result.length,
body: result
};
callback(null, JSON.stringify(response));
РЕДАКТИРОВАТЬ:
Затем на стороне клиента проанализируйте строку JSON, чтобы вернуть ее объекту (в этом примере предполагается, что ваш клиент также является Javascript):
var myObject = JSON.parse(responseBody);