Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla · Oppitunti

Ensimmäinen Lambda-funktio (Python)

Kirjoittakaa ja ottakaa käyttöön ensimmäinen AWS Lambda -funktionne Pythonilla sekä opetelkaa sen perusrakenne ja suoritusmalli

Oppitunti 3/412 vaihetta

Ensimmäinen Lambda-funktio (Python) on ilmainen Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea koko oppitunnin alta ilmaiseksi ja harjoitella sen jälkeen käytännössä selaimessa sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla. Oppitunti kuuluu Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-kurssilla on yhteensä 4 oppituntia.

Tervetuloa AWS Lambdan pariin!

On ensimmäisen funktionne aika. AWS Lambda on Function as a Service: lataatte koodin, ja Lambda suorittaa sen ilman, että teidän tarvitsee ottaa palvelimia käyttöön.

Miksi Python Lambdassa?

Python on erinomainen Lambda-ajonaikainen ympäristö: se on helppolukuinen, tarjoaa runsaasti kirjastoja ja sopii erinomaisesti API-rajapintoihin, datan käsittelyyn ja automaatioon. Se sopii hyvin myös aloittelijoille.

Lambdan käsittelijäfunktio

Jokainen Lambda tarvitsee aloituskohdan: handler-käsittelijän. Lambda kutsuu sitä kahdella argumentilla — event sisältää syötetiedot ja context ajonaikaiset tiedot.

Ensimmäinen Python-Lambdanne

Tässä on minimaalinen "Hello World" -Lambda. Kaikki logiikka sijaitsee kohteessa lambda_handler — suorittakaa se paikallisesti, jotta saatte tuntuman rakenteeseen.

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)

event-käsitteen ymmärtäminen

event-parametri sisältää funktion käynnistäneen syötteen. Se välitetään JSON-muodossa ja muunnetaan Pythonin dict-rakenteeksi — kyseessä voi olla API-kutsu, S3-lataus tai jonoviesti.

Koodi: tapahtuman lukeminen

Lukekaa nyt nimi event-objektista ja käyttäkää oletusarvoa, jos sitä ei löydy. Huomatkaa, että event.get('key', default) mahdollistaa turvallisen käytön ilman KeyErrors-virheitä.

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-objekti

context-objekti tarjoaa ajonaikaisia tietoja, kuten aws_request_id-, function_name-arvot ja jäljellä olevan suoritusajan. Se on hyödyllinen, vaikka jättäisitte sen usein huomiotta.

Vakiomuotoisen vastauksen palauttaminen

Kun API Gateway käynnistää funktionne, se odottaa tietynmuotoista rakennetta: statusCode-arvoa ja JSON-merkkijonona olevaa body-kenttää. Näin asiakas saa selkeän vastauksen.

Koodi: täydellinen API-vastaus

Tässä on täydellisempi, API-käyttöön valmis vastaus, jossa on Content-Type-otsake ja rakenteinen JSON-runko. Luomme context-objektille arvot paikallista testausta varten.

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)

Miten Lambda suorittaa koodinne

Jokaisen tapahtuman yhteydessä Lambda käynnistää säilön tai käyttää olemassa olevaa säilöä, lataa koodinne, kutsuu käsittelijää, suorittaa sen ja palauttaa tuloksen — minkä jälkeen se odottaa tai sammuu.

Pikatarkistus

Mikä seuraavista kuvaa parhaiten event-parametrin tarkoitusta Pythonin Lambda-käsittelijäfunktiossa?

Kertaus: ensimmäinen Lambdanne!

Kertaus: Lambda suorittaa koodia ilman palvelimia. Käsittelijä on aloituskohtanne, event sisältää syötteen dict-rakenteena, context tarjoaa ajonaikaiset tiedot ja palautatte tilan sekä JSON-rungon.

Aloita maksutta

Opi Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
12
Oppitunnit
48

Usein kysytyt kysymykset

Onko oppitunti ”Ensimmäinen Lambda-funktio (Python)” ilmainen?

Kyllä – oppitunnin ”Ensimmäinen Lambda-funktio (Python)” koko tekstin voi lukea täällä verkossa ilmaiseksi. Jos haluat harjoitella interaktiivisesti sisäänrakennetulla koodieditorilla ja ympäri vuorokauden käytettävissä olevan tekoälytuutorin avulla sekä avata koko Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-kurssin, päivitä CoddyKit PROhon. Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”Ensimmäinen Lambda-funktio (Python)”?

Kirjoittakaa ja ottakaa käyttöön ensimmäinen AWS Lambda -funktionne Pythonilla sekä opetelkaa sen perusrakenne ja suoritusmalli Harjoittelet Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”Ensimmäinen Lambda-funktio (Python)”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppitunnilla?

Kyllä. Jokainen Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Mitä palvelimettomuus on?
  2. AWS:n keskeisten palvelujen yleiskatsaus
  3. Ensimmäinen Lambda-funktio (Python)
  4. Serverless-suoritusmallin ymmärtäminen
← Takaisin: Palvelimeton taustajärjestelmä AWS Lambdalla ja API Gatewaylla