Serverløs backend med AWS Lambda og API Gateway · Lektion

Integration af Lambda med API Gateway

Konfigurér API Gateway til at udløse Deres Lambda-funktioner, så De opretter et komplet serverless-HTTP-endpoint.

Lektion 3 af 411 trin

Integration af Lambda med API Gateway er en gratis Serverløs backend med AWS Lambda og API Gateway-lektion på CoddyKit. Dette er lektion 3 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i Serverløs backend med AWS Lambda og API Gateway, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Serverløs backend med AWS Lambda og API Gateway-kurset indeholder 4 lektioner i alt.

Forbind Lambda med API Gateway

Velkommen! I denne lektion lærer du, hvordan du forbinder dine AWS Lambda-funktioner med API Gateway. Det opretter et effektivt serverløst HTTP-slutpunkt, så brugere kan udløse din kode via webforespørgsler.

Tænk på det som at give din Lambda-funktion en webadresse!

API Gateway: Din webindgang

Husk, at API Gateway fungerer som indgangen til dine serverløse applikationer. Den håndterer indgående HTTP-forespørgsler og videresender dem til den korrekte backend-tjeneste, f.eks. en Lambda-funktion.

  • Håndterer trafik effektivt
  • Håndterer godkendelse og autorisation
  • Videresender forespørgsler til bestemte funktioner

Lambda Proxy-integrationen

Den mest almindelige og fleksible måde at forbinde API Gateway med Lambda på er at bruge Lambda Proxy Integration. Denne metode videresender hele den indgående HTTP-forespørgsel til din Lambda-funktion.

Din Lambda behandler derefter forespørgslen og returnerer et bestemt JSON-svar, som API Gateway forstår.

Format for forespørgsel og svar

Med proxy-integrationen sender API Gateway hele HTTP-forespørgslen (headere, brødtekst og forespørgselsparametre) til din Lambda som et event-objekt.

Din Lambda skal returnere et JSON-objekt med bestemte nøgler: statusCode, headers og body. Det gør det muligt for API Gateway at oprette det endelige HTTP-svar til klienten.

Vores første proxy-Lambda

Lad os skrive en simpel Python-Lambda-funktion, der forventer en proxy-hændelse. Den returnerer meddelelsen 'Hello from Lambda!' og sender en del af inputtet tilbage.

Husk, at ordbogen event indeholder alle oplysninger om forespørgslen.

import json

def lambda_handler(event, context):
    # The 'event' contains details like
    # path, httpMethod, headers, body, queryStringParameters
    print(f"Received event: {json.dumps(event)}")

    # Prepare the response body
    response_body = {
        "message": "Hello from Lambda! Your path was:",
        "path": event.get("path", "N/A")
    }

    # Return the response in the required proxy format
    return {
        "statusCode": 200,
        "headers": {
            "Content-Type": "application/json"
        },
        "body": json.dumps(response_body)
    }

Konfiguration af API Gateway

Lad os nu konfigurere API Gateway-delen. Vi opretter en HTTP API og definerer en rute.

HTTP-API'er er enklere og mere omkostningseffektive til grundlæggende serverløse slutpunkter end REST-API'er. Vi gennemgik forskellene i en tidligere lektion.

Definition af en rute og integration

I API Gateway opretter du en rute, f.eks. GET /hello. Denne rute angiver HTTP-metoden og stien til dit slutpunkt.

Derefter føjer du en integration til ruten, som peger på din Lambda-funktion. Det er her, API Gateway ved, hvilken Lambda-funktion der skal kaldes!

Tildeling af tilladelser til kald

For at API Gateway kan udløse din Lambda-funktion korrekt, skal den have tilladelse. Dette administreres af en IAM Role, der er knyttet til API Gateway.

API Gateway kræver specifikt tilladelsen lambda:InvokeFunction på din Lambda-ressource. AWS konfigurerer ofte dette automatisk, når integrationen oprettes via konsollen.

Udrul og test dit slutpunkt

Efter konfiguration af ruten og integrationen skal du udrulle dine ændringer i API Gateway. Det gør dit slutpunkt offentligt tilgængeligt.

Du får en URL til kald, som du kan bruge sammen med værktøjer som en webbrowser eller curl til at teste din nye serverløse API!

Kontrol af integrationen

Du har lært, hvordan Lambda Proxy Integration fungerer. Hvilke af følgende felter er PÅKRÆVEDE i JSON-svaret fra en Lambda-funktion ved API Gateway Proxy Integration?

Opsummering: Lambda og API Gateway

Godt klaret! Du har lært, hvordan du integrerer Lambda-funktioner med API Gateway:

  • API Gateway fungerer som webindgangen til dine serverløse funktioner.
  • Lambda Proxy Integration er standardmetoden, der videresender hele HTTP-forespørgsler til Lambda.
  • Lambda returnerer et bestemt JSON-format (statusCode, headers, body), som API Gateway kan behandle.
  • IAM-tilladelser er afgørende for, at API Gateway kan kalde din Lambda-funktion på en sikker måde.
  • Efter udrulning er din Lambda-funktion tilgængelig via en offentlig URL!
Gratis at komme i gang

Lær Serverløs backend med AWS Lambda og API Gateway med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
12
Lektioner
48

Ofte stillede spørgsmål

Er lektionen “Integration af Lambda med API Gateway” gratis?

Ja — hele teksten til “Integration af Lambda med API Gateway” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af Serverløs backend med AWS Lambda og API Gateway-kurset, skal du opgradere til CoddyKit PRO. Serverløs backend med AWS Lambda og API Gateway-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Integration af Lambda med API Gateway”?

Konfigurér API Gateway til at udløse Deres Lambda-funktioner, så De opretter et komplet serverless-HTTP-endpoint. Du øver dig i Serverløs backend med AWS Lambda og API Gateway med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Serverløs backend med AWS Lambda og API Gateway?

Der kræves ingen tidligere erfaring. Serverløs backend med AWS Lambda og API Gateway på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 3 af 4.

Hvor lang tid tager lektionen “Integration af Lambda med API Gateway”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Serverløs backend med AWS Lambda og API Gateway-lektion?

Ja. Alle Serverløs backend med AWS Lambda og API Gateway-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Introduktion til API Gateway
  2. HTTP API sammenlignet med REST API
  3. Integration af Lambda med API Gateway
  4. Request- og response-mapping i API Gateway
← Tilbage til Serverløs backend med AWS Lambda og API Gateway