Backend
express 에서 dynamoDB 사용하기
wngnl05
2025. 1. 7. 13:51
Install Aws-Sdk
npm i aws-sdk dotenv
Example /conf/dynamo.js
더보기
const AWS = require('aws-sdk');
require('dotenv').config("../");
// AWS DynamoDB 설정
const configureDynamoDB = () => {
AWS.config.update({
region: process.env.AwsRegion,
accessKeyId: process.env.AwsAccess,
secretAccessKey: process.env.AwsSecret,
});
return new AWS.DynamoDB.DocumentClient();
};
// dynamoDB 삽입 함수
const dynamoDB_Insert = async (tableName, item) => {
const dynamoDb = configureDynamoDB();
const params = {
TableName: tableName,
Item: item,
};
try { await dynamoDb.put(params).promise() }
catch (error) { return [] }
};
// dynamoDB 조회 함수
const dynamoDB_Get = async (tableName, key) => {
const dynamoDb = configureDynamoDB();
const params = {
TableName: tableName,
Key: key,
};
try {
const data = await dynamoDb.get(params).promise();
return data.Item || [];
}
catch (error) { return [] }
};
// dynamoDB 삭제 함수
const dynamoDB_Delete = async (tableName, key) => {
const dynamoDb = configureDynamoDB();
const params = { TableName: tableName, Key: key };
try { await dynamoDb.delete(params).promise() }
catch (error) { return [] }
};
module.exports = { dynamoDB_Insert, dynamoDB_Get, dynamoDB_Delete };
How to run?
const { dynamoDB_Insert, dynamoDB_Get, dynamoDB_Delete } = require('../conf/dynamoDB.js');
await dynamoDB_Insert("TableName", {userEmail: "", userPassword: ""})
const response = await dynamoDB_Get("TableName", {userName: "lee"})
await dynamoDB_Delete("TableName", {userName: "lee"})