Невозможно получить ответ лямбда-функции в пошаговых функциях AWSJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Невозможно получить ответ лямбда-функции в пошаговых функциях AWS

Сообщение Anonymous »

Я столкнулся с проблемой при попытке получить ответ от функции Lambda в конечном автомате AWS Step Functions. Несмотря на различные попытки, мне не удалось правильно получить тело ответа. Вот краткое описание проблемы:
Описание: У меня есть конечный автомат Step Functions, который вызывает лямбда-функцию. Функция Lambda возвращает тело ответа JSON. Однако при выполнении конечного автомата ответ, полученный в выходных данных Step Functions, не соответствует ожидаемому.
Ожидаемое поведение: Я ожидаю, что выходные данные Step Functions будут захватить весь текст ответа, возвращаемый функцией Lambda.
Код Java:

Код: Выделить всё

public ResponseEntity fetchCertificateStatus() {
String jsonData = "{\"name\": \"John\", \"age\": 30, \"city\": \"New York\"}";

// Parse the JSON data to a Java object
Gson gson = new Gson();
Person person = gson.fromJson(jsonData, Person.class);

return ResponseEntity.ok(person);

}
Код функции шага:

Код: Выделить всё

{

"Comment": "A description of my state machine",
"StartAt": "Lambda Invoke",
"States": {
"Lambda Invoke": {
"Type": "Task",
"Resource": "arn:aws:lambda:ap-southeast-2:72806977b",
"ResultPath": "$.LambdaResponse",  // Store the entire Lambda response here
"End": true
}
}
}
Текущий результат:

Код: Выделить всё

{
"LambdaResult": 200
}
текущий результат**
Ожидаемый результат для состояния функции Step:**

Код: Выделить всё

{
"name": "John",
"age": 30,
"city": "New York"
}
**
Подробности о проблеме:**
  • Вывод Step Functions фиксирует только код состояния (например, 200), а не весь текст ответа.
  • Попытки использовать определенный

    Код: Выделить всё

    ResultPath
    [/b] значения, такие как

    Код: Выделить всё

    LambdaResult
    [/b] и

    Код: Выделить всё

    LambdaResponseBody
    [/b] не дал ожидаемых результатов.
  • Сама функция Lambda правильно возвращает тело ответа JSON при протестировано независимо с помощью таких инструментов, как Postman.
К вашему сведению: Lambda развертывается и работает с Java во время выполнения.
Предпринятые действия по устранению неполадок:
  • Проверено, что функция Lambda функция ARN в конфигурации конечного автомата верна.
  • Убедено, что функция Lambda возвращает тело ответа в ожидаемом формате JSON.
  • Проверены журналы CloudWatch для выполнения функции Lambda и пошаговых функций на наличие сообщений об ошибках.
Ожидание: полное тело ответа в формате JSON на вкладке вывода конечного автомата.

Подробнее здесь: https://stackoverflow.com/questions/785 ... -functions
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»