プロジェクト

全般

プロフィール

サンプルコード

helloworld

import json

def lambda_handler(event, context):
    return {
        "statusCode": 200,
        "body": json.dumps({
            "message": "hello world"
        }),
    }

S3からjsonファイルをGetして内容をレスポンスとして返す

LambdaにアタッチするIAMロールにS3への許可を設定する必要あり
環境変数"S3_BUCKET"にS3バケットの名前を設定

import json
import boto3
import os

s3_client = boto3.client('s3')
BUCKET = os.environ.get('S3_BUCKET')
FILE = 'study.json'

def lambda_handler(event, context):

    s3GetRes = s3_client.get_object(
        Bucket=BUCKET,
        Key=FILE 
    )
    body = s3GetRes['Body'].read().decode('utf-8')
    print('body ', body)

    return {
        "statusCode": 200,
        "body": body
    }

SAMでHelloWorldプロジェクトを作成

Cloud9環境にて

sam init --runtime python3.8 -n study-sam-py

cd study-sam-py
sam build --use-container
sam deploy --guided