AWS Lambda
Guia do desenvolvedor

Manipulador da função do AWS Lambda no Python

Ao criar uma função do Lambda, você especifica um manipulador, que é uma função no código, o qual o AWS Lambda pode invocar quando o serviço executa seu código. Use a seguinte estrutura de sintaxe geral ao criar uma função de manipulador em Python.

def handler_name(event, context): ... return some_value

Observe o seguinte em relação à sintaxe:

  • event – O AWS Lambda usa este parâmetro para inserir dados de evento no manipulador. Esse parâmetro é sempre do tipo dict em Python. Ele também pode ser tipo list, str, int, floatou NoneType.

  • context – O AWS Lambda usa esse parâmetro para fornecer informações de tempo de execução ao manipulador. Esse parâmetro é sempre do tipo LambdaContext.

  • Opcionalmente, o manipulador poderá retornar um valor. O que acontece com o valor retornado depende do tipo de invocação que você usa ao invocar a função do Lambda:

    • Se você usar o tipo de invocação RequestResponse (execução síncrona), o AWS Lambda retorna o resultado da chamada de função Python para o cliente que invoca a função do Lambda (na resposta HTTP à solicitação de invocação, serializada em JSON). Por exemplo, o console do AWS Lambda usa o tipo de invocação RequestResponse, assim, quando você invocar a função usando o console, ele exibirá o valor retornado.

      Se o manipulador retornar NONE, o AWS Lambda retornará nulo.

    • Se você usar o tipo de invocação Event (execução assíncrona), o valor será descartado.

Por exemplo, considere o código de exemplo em Python a seguir.

def my_handler(event, context): message = 'Hello {} {}!'.format(event['first_name'], event['last_name'])  return { 'message' : message }

Esse exemplo tem uma função chamada my_handler. A função retorna uma mensagem com dados do evento recebido como entrada.