github 라벨 생성

github 이슈 생성

생성한 이슈에 branch 생성
git fetch origin
git checkout feature/create-article-api
.gitignore 설정
.env 설정
// .env
PORT=3030
// src/index.js
import dotenv from "dotenv"
dotenv.config(); // .env파일을 읽어와서 process.env에 저장
const port = process.env.PORT;
console.log("현재 포트:", process.env.PORT);
db 연결
// .env
DB_HOST=localhost
DB_PORT=3306
DB_USER=root
DB_PASSWORD=mysql3143
DB_NAME=mission_db
// src/db.config.js
import mysql from "mysql2/promise";
import dotenv from "dotenv";
dotenv.config();
export const pool = mysql.createPool({
host: process.env.DB_HOST || "localhost", // mysql의 hostname
user: process.env.DB_USER || "root", // user 이름
port: process.env.DB_PORT || 3306, // 포트 번호
database: process.env.DB_NAME || "mission_db", // 데이터베이스 이름
password: process.env.DB_PASSWORD || "mysql3143", // 비밀번호
waitForConnections: true,
// Pool에 획득할 수 있는 connection이 없을 때,
// true면 요청을 queue에 넣고 connection을 사용할 수 있게 되면 요청을 실행하며, false이면 즉시 오류를 내보내고 다시 요청
connectionLimit: 10, // 몇 개의 커넥션을 가지게끔 할 것인지
queueLimit: 0, // getConnection에서 오류가 발생하기 전에 Pool에 대기할 요청의 개수 한도
});
```
/api/user요청 데이터
{
"name": "이름",
"gender": "여성/남성",
"age": "23",
"birth": "20030315",
"address": "주소",
"specAddress": "세부주소",
"email": "이메일",
"categories": ["도시락", "고기"]
}
DTO 구현 (responseFromUser )
export const responseFromUser = ({ member, preferences }) => {
return {
id: member.id,
email: member.email,
name: member.name,
gender: member.gender,
age: member.age,
address: member.address,
specAddress: member.spec_address,
phoneNumber: member.phone_num,
preferences: preferences.map(p => p.category_id)
};
};
API test(/api/user)


Issue: 5주차 mission
branch: feature/chapter-05

// request body
{
"regionId": 1,
"name": "마포곱창",
"address": "서울시 마포구 합정동 123",
"score": 4.5
}





