

# Escrever e criar uma função do Lambda@Edge
<a name="lambda-edge-create-function"></a>

Para usar o Lambda@Edge, você *escreve* o código da função do AWS Lambda. Para ajudar você a escrever funções do Lambda@Edge, consulte os seguintes recursos:
+  [Estrutura de eventos do Lambda@Edge](lambda-event-structure.md): entenda a estrutura de eventos a ser usada com o Lambda@Edge.
+ [Funções de exemplo do Lambda@Edge](lambda-examples.md): funções de exemplo, como testes A/B e geração de um redirecionamento HTTP.

O modelo de programação para usar o Node.js com o Lambda@Edge é o mesmo que para usar o Lambda em uma Região da AWS. Consulte mais informações em [Criar funções do Lambda com Node.js](https://docs.aws.amazon.com/lambda/latest/dg/lambda-nodejs.html) ou em [Criar funções do Lambda com Python](https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html) no *Guia do desenvolvedor do AWS Lambda*.

Na função do Lambda@Edge, inclua o parâmetro `callback` e retorne o objeto aplicável para eventos de solicitação ou resposta:
+ **Eventos de solicitação**: inclua o objeto `cf.request` na resposta.

  Se você estiver gerando uma resposta, inclua o objeto `cf.response` na resposta. Para obter mais informações, consulte [Gerar respostas de HTTP em acionadores da solicitação](lambda-generating-http-responses.md#lambda-generating-http-responses-in-requests). 
+ **Eventos de resposta**: inclua o objeto `cf.response` na resposta.

Depois de escrever seu próprio código ou usar um dos exemplos, você cria a função no Lambda. Para criar uma função ou editar uma existente, consulte os seguintes tópicos:

**Topics**
+ [Criar uma função do Lambda@Edge](lambda-edge-create-in-lambda-console.md)
+ [Editar uma função do Lambda](lambda-edge-edit-function.md)

 Depois de criar a função no Lambda, você configura o Lambda para executar a função com base em eventos específicos do CloudFront, chamados *acionadores*. Para obter mais informações, consulte [Adicionar acionadores para uma função do Lambda@Edge](lambda-edge-add-triggers.md).