인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

이희서님의 프로필 이미지
이희서

작성한 질문수

하루만에 배우는 aws 서버리스

Lambda 함수 생성 + code 분석

Rest API Lambda 함수 생성 + code 분석 코드 어디있나요?

해결된 질문

작성

·

370

·

수정됨

2

다음과 같은 양식으로 남겨주세요.

질문을 한 배경 :코드 보고 싶습니다

질문내용 :Lambda 함수 생성 + code 분석" 파트를 듣고 있는데요, index.mjs 코드를 올려주신다고 했는데, 어디서 볼 수 있을지 궁금합니다 선생님

답변 3

0

양동준님의 프로필 이미지
양동준
지식공유자

영상 밑에 스크롤을 내리면 있긴한데 아마 안보였을지도요.
import { DynamoDBClient } from "@aws-sdk/client-dynamodb";

import {

  DynamoDBDocumentClient,

  ScanCommand,

  PutCommand,

  GetCommand,

  DeleteCommand,

}

from "@aws-sdk/lib-dynamodb";

 

const client = new DynamoDBClient({});

 

const dynamo = DynamoDBDocumentClient.from(client);

 

const tableName = "http-crud-tutorial-items";

 

export const handler = async (event, context) => {

  let body;

  let statusCode = 200;

  const headers = {

    "Content-Type": "application/json",

  };

 

  try {

    switch (`${event.httpMethod} ${event.resource}`) {

      case "DELETE /items/{id}":

        await dynamo.send(

          new DeleteCommand({

            TableName: tableName,

            Key: {

              id: event.pathParameters.id,

            },

          })

        );

        body = Deleted item ${event.pathParameters.id};

        break;

      case "GET /items/{id}":

        body = await dynamo.send(

          new GetCommand({

            TableName: tableName,

            Key: {

              id: event.pathParameters.id,

            },

          })

        );

        body = body.Item;

        break;

      case "GET /items":

        body = await dynamo.send(

          new ScanCommand({ TableName: tableName })

        );

        body = body.Items;

        break;

      case "PUT /items":

        let requestJSON = JSON.parse(event.body);

        await dynamo.send(

          new PutCommand({

            TableName: tableName,

            Item: {

              id: requestJSON.id,

              price: requestJSON.price,

              name: requestJSON.name,

            },

          })

        );

        body = Put item ${requestJSON.id};

        break;

      default:

        throw new Error(`Unsupported route: "${event.routeKey}"`);

    }

  }

  catch (err) {

    statusCode = 400;

    body = err.message;

  }

  finally {

    body = JSON.stringify(body);

  }

 

  return {

    "statusCode": statusCode,

    "headers": headers,

    "isBase64Encoded": false,

    "body": body

  };

};

 

image영상 밑에 스크롤을 내리면 있긴한데

0

이희서님의 프로필 이미지
이희서
질문자

혹시 잊어버리셨을까 리마인드 드립니다.

양동준님의 프로필 이미지
양동준
지식공유자

선생님 오늘 바로는 힘들것 같긴한데요

양동준님의 프로필 이미지
양동준
지식공유자

아 근데 선생님 강의 밑에 코드가 있긴하던데 이거말고 다른거 말하시는 건가요?

이희서님의 프로필 이미지
이희서
질문자

코드요? 링크 부탁드립니다

0

양동준님의 프로필 이미지
양동준
지식공유자

선생님 양식을 지켜주시면 감사합니다
질문이 뭘 물어보는지 모르겠습니다

이희서님의 프로필 이미지
이희서
질문자

네, "Lambda 함수 생성 + code 분석" 파트를 듣고 있는데요, index.mjs 코드를 올려주신다고 했는데, 어디서 볼 수 있을지 궁금합니다 선생님

수업 정말 감명깊게 듣고 있습니다

양동준님의 프로필 이미지
양동준
지식공유자

선생님 제가 아마 추가한다고 햇는데 누락된것 같습니다.
최대한 작업해서 빠르게 올리겠습니다

죄송합니다

이희서님의 프로필 이미지
이희서
질문자

선생님, 추가 하시면 링크 부탁 드립니다

이희서님의 프로필 이미지
이희서
질문자

완료 되시면 어디서 볼 수 있는지 알려주세요~

이희서님의 프로필 이미지
이희서
질문자

얼마나 걸릴까요?

이희서님의 프로필 이미지
이희서

작성한 질문수

질문하기