Произошла ошибка (InvalidLambdaResponseException) при вызове операции InitiateAuth: нераспознаваемый лямбда-вывод - PullRequest
0 голосов
/ 10 октября 2018

Я новичок в разработке aws и пытался использовать функции без пароля, используя пользовательский поток аутентификации aws cognito, лямбда-триггеры и SDK aws python.

Моя проблема после вызова InitiateAuth , Я всегда получаю сообщение об ошибке ниже: An error occurred (InvalidLambdaResponseException) when calling the InitiateAuth operation: Unrecognizable lambda output

Полный возврат: Traceback (most recent call last): File "test_custom_auth.py", line 52, in <module> ClientId=client_id File "/Users/jules/Repositories/snaaap/onemac-api/env/lib/python3.6/site-packages/botocore/client.py", line 320, in _api_call return self._make_api_call(operation_name, kwargs) File "/Users/jules/Repositories/snaaap/onemac-api/env/lib/python3.6/site-packages/botocore/client.py", line 623, in _make_api_call raise error_class(parsed_response, operation_name) botocore.errorfactory.InvalidLambdaResponseException: An error occurred (InvalidLambdaResponseException) when calling the InitiateAuth operation: Unrecognizable lambda output

Я могу видеть через журналы Cloudwatch, что Триггер defineAuthChallenge и createAuthChallenge Trigger вызовы выполнены успешно, и даже удалось распечатать журналы, чтобы убедиться в этом.

Сначала я выполнял лямбда-функции с Javascript , затем с Python , просто чтобы попробовать другой метод.

Я пытался вернуть следующее в python (я редактирую с помощью консоли редактора lambda)

  • return event
  • result = { "isBase64Encoded": False, "statusCode": 200, "headers": {}, "body": json.dumps(event) } return result

Я пытался вернуть следующее в javascript (я редактирую с помощью лямбда-консоли редактора)

  • context.succeed(event)
  • callback(null, event)
  • context.done(event)
  • context.done(JSON.stringify(event))

И перестановки упомянутых выше, но я все еще продолжал получать ошибку :( Цените любого, кто может помочь!

РЕДАКТИРОВАТЬ

Выполнен другой запрос:

Ниже приведены журналы defineAuthChallenge : START RequestId: 14441740-cc65-11e8-a632-9508cbba464c Version: $LATEST END RequestId: 14441740-cc65-11e8-a632-9508cbba464c REPORT RequestId: 14441740-cc65-11e8-a632-9508cbba464c Duration: 6.70 ms Billed Duration: 100 ms Memory Size: 128 MB Max Memory Used: 20 MB

Ниже приведены журналы ** createAuthChallenge **: START RequestId: 144995b6-cc65-11e8-8d2d-5388c84ccf95 Version: $LATEST END RequestId: 144995b6-cc65-11e8-8d2d-5388c84ccf95 REPORT RequestId: 144995b6-cc65-11e8-8d2d-5388c84ccf95 Duration: 592.59 ms Billed Duration: 600 ms Memory Size: 128 MB Max Memory Used: 29 MB

1 Ответ

0 голосов
/ 10 октября 2018

Изменено challengeMetaData на challengeMetadata в ответе, который я возвращаю из своей функции createAuthChallenge .Узнал, что при вводе неверного ключа в атрибут ответа лямбда выдаст InvalidLambdaResponseException, хотя я надеюсь, что в следующий раз облачные часы смогут его поймать.

Получил идею от @thomasmichaelwallace, и эта статья https://forums.aws.amazon.com/thread.jspa?threadID=237677.

...