2015-04-26 3 views
16

Можно ли вызвать функцию AWS Lambda напрямую с помощью HTTP-запроса (GET или POST)? Если нет, есть ли обходной путь через SNS или S3? Потому что я не могу думать об одном ...Вызвать функцию AWS Lambda по запросу http

В частности, я хотел бы создать небольшой API с помощью JSON

+0

Не могли бы вы объяснить немного больше ваше использование дело? Вызывать откуда? 'Curl'? Браузер? По умолчанию [invoke] (http://docs.aws.amazon.com/lambda/latest/dg/API_Invoke.html) имеет тип вызова 'RequestResponse', который по существу является HTTP-запросом. Вы даже можете увидеть синтаксис запроса по ссылке. –

+0

Мы создали для этого несколько инструментов. Это все публично. Не стесняйтесь его разветвлять. https://github.com/bespoken/bstpy и https://github.com/bespoken/bst. –

ответ

17

Шлюз AWS API - единственный способ разоблачить вашу лямбда-функцию через HTTP. Веб-консоль AWS lambda должна автоматически создать ее для вас, если вы используете схему микросервиса-http-конечной точки при создании новой функции лямбда.

enter image description here

Или вы можете установить его на следующем экране enter image description here

Или создать его с помощью веб-консоли AWS API Gateway. enter image description here


Вы также можете исследовать применение его по требованию с помощью SDK в вашем клиенте, мобильный телефон или веб-приложение. Дополнительная информация here.

+0

Но как только вы установили эту настройку шлюза API, как вы его ударили? Под этапами/prod я получаю все возможные HTTP-методы и общий URL-адрес для них. Нажатие на URL-адрес дает '{" сообщение ":" Отсутствует токен аутентификации "}' –

-3

Да, вы можете. Для этого есть API: Invoke

+0

Вы можете уточнить, «но вам нужно будет [подписать] (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html)». –

Смежные вопросы