Serverløs backend med AWS Lambda & API Gateway · leksjon

Første Lambda-funksjon (Python)

Skriv og distribuer din aller første AWS Lambda-funksjon i Python, og lær den grunnleggende strukturen og kjøringsmodellen.

Leksjon 3 av 412 trinn

Første Lambda-funksjon (Python) er en gratis leksjon i Serverløs backend med AWS Lambda & API Gateway på CoddyKit. Dette er leksjon 3 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i Serverløs backend med AWS Lambda & API Gateway, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i Serverløs backend med AWS Lambda & API Gateway inneholder totalt 4 leksjoner.

Velkommen til AWS Lambda!

Det er tid for din første funksjon. AWS Lambda er Function as a Service: Du laster opp kode, og Lambda kjører den uten at du må klargjøre servere.

Hvorfor Python for Lambda?

Python er et godt kjøremiljø for Lambda – språket er lett å lese, har et rikt bibliotekutvalg og passer perfekt til API-er, databehandling og automatisering. Det er også nybegynnervennlig.

Lambda-handlerfunksjonen

Alle Lambda-funksjoner trenger et startpunkt: handleren. Lambda kaller den med to argumenter – event (inndata) og context (informasjon om kjøremiljøet).

Din første Python-Lambda

Her er en minimal «Hello World»-Lambda. All logikken din ligger i lambda_handler – kjør den lokalt for å få et inntrykk av strukturen.

import json

def lambda_handler(event, context):
    # Your function's logic goes here
    message = "Hello from your first Lambda!"
    
    # Lambda functions typically return a dictionary
    return {
        'statusCode': 200,
        'body': json.dumps(message)
    }

# This block allows you to test your function locally
if __name__ == "__main__":
    # Simulate an empty event and context for a simple test
    mock_event = {}
    mock_context = None
    response = lambda_handler(mock_event, mock_context)
    print("Local Test Response:", response)

Forstå «event»

Parameteren event inneholder inndataene som utløste funksjonen. Dataene leveres som JSON og konverteres til en Python-dict – for eksempel et API-kall, en S3-opplasting eller en kømelding.

Kode: Lese fra event

Les nå et navn fra event, og bruk en standardverdi hvis det mangler. Legg merke til event.get('key', default), som gir trygg tilgang uten KeyErrors.

import json

def lambda_handler(event, context):
    # Get 'name' from the event, or default to 'there'
    name = event.get('name', 'there') 
    message = f"Hello, {name} from Lambda!"
    
    return {
        'statusCode': 200,
        'body': json.dumps(message)
    }

# Local testing with different events
if __name__ == "__main__":
    mock_event_with_name = {"name": "CoddyKit User"}
    response_with_name = lambda_handler(mock_event_with_name, None)
    print("With name:", response_with_name)

    mock_event_no_name = {}
    response_no_name = lambda_handler(mock_event_no_name, None)
    print("Without name:", response_no_name)

«context»-objektet

context-objektet viser informasjon om kjøremiljøet, for eksempel aws_request_id, function_name og gjenværende kjøretid. Det er nyttig selv om du ofte velger å ikke bruke det.

Returnere et standardisert svar

Når API Gateway utløser funksjonen din, forventer tjenesten en bestemt struktur: en statusCode og en body som er en JSON-streng. Slik får klienten et ryddig svar.

Kode: Komplett API-svar

Her er et mer komplett, API-klart svar med en Content-Type-header og strukturert JSON-innhold. Vi simulerer et context-objekt for lokal testing.

import json

def lambda_handler(event, context):
    name = event.get('name', 'World')
    
    # Simulate a context object for local testing
    request_id = getattr(context, 'aws_request_id', 'local-test-id')

    response_message = f"Greetings, {name}! Your request ID is {request_id}."

    return {
        'statusCode': 200,
        'headers': {
            'Content-Type': 'application/json'
        },
        'body': json.dumps({
            'message': response_message,
            'input_data': event # Echoing input for demonstration
        })
    }

# Local testing with a dummy context
if __name__ == "__main__":
    class MockContext:
        aws_request_id = 'mock-request-123'

    mock_event = {"name": "CoddyKit"}
    mock_context_obj = MockContext()
    response = lambda_handler(mock_event, mock_context_obj)
    print("Full API Response:", response)

Slik kjører Lambda koden din

For hver hendelse starter Lambda en container eller bruker en eksisterende, laster inn koden din, kaller handleren, kjører den og returnerer resultatet – før den venter eller avsluttes.

Hurtigsjekk

Hvilket av de følgende beskriver best formålet med parameteren event i en Python-Lambda-handlerfunksjon?

Oppsummering: Din første Lambda!

Oppsummert: Lambda kjører kode uten servere. Handleren er startpunktet ditt, event inneholder inndata som en dict, context gir informasjon om kjøremiljøet, og du returnerer en status og en JSON-body.

Gratis å komme i gang

Lær deg Serverløs backend med AWS Lambda & API Gateway med en AI-veileder – gratis

Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.

Kurs
12
Leksjoner
48

Ofte stilte spørsmål

Er leksjonen «Første Lambda-funksjon (Python)» gratis?

Ja – hele teksten i «Første Lambda-funksjon (Python)» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av Serverløs backend med AWS Lambda & API Gateway-kurset, kan du oppgradere til CoddyKit PRO. Kurset i Serverløs backend med AWS Lambda & API Gateway inneholder totalt 4 leksjoner.

Hva lærer jeg i «Første Lambda-funksjon (Python)»?

Skriv og distribuer din aller første AWS Lambda-funksjon i Python, og lær den grunnleggende strukturen og kjøringsmodellen. Du øver på Serverløs backend med AWS Lambda & API Gateway med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.

Trenger jeg erfaring for å begynne med Serverløs backend med AWS Lambda & API Gateway?

Ingen tidligere erfaring er nødvendig. Serverløs backend med AWS Lambda & API Gateway på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 3 av 4.

Hvor lang tid tar leksjonen «Første Lambda-funksjon (Python)»?

De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.

Kan jeg skrive og kjøre kode i denne Serverløs backend med AWS Lambda & API Gateway-leksjonen?

Ja. Alle Serverløs backend med AWS Lambda & API Gateway-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.

Alle leksjonene i dette kurset

  1. Hva er serverløst?
  2. Oversikt over AWS-kjernetjenester
  3. Første Lambda-funksjon (Python)
  4. Forstå serverless-kjøringsmodellen
← Tilbake til Serverløs backend med AWS Lambda & API Gateway