BookStore 테이블 및 API 점검

데브코스

목록 보기
57/133


USER 라우트

const express = require('express')
const router = express.Router();

router.use(express.json());

// 회원가입
router.post('/join', (req, res) => {
    res.json('회원가입');
});

// 로그인
router.post('/login',  (req, res) => {
    res.json('로그인');
});

// 비밀번호 초기화 요청
router.post('/reset',  (req, res) => {
    res.json('비밀번호 초기화 요청');
});

// 비밀번호 초기화
router.put('/reset',  (req, res) => {
    res.json('비밀번호 초기화');
});

module.exports = router

APP.JS

const express = require('express');
const app = express();

const dotenv = require('dotenv');
dotenv.config();

//유의미한 포트 번호 지정
app.listen(process.env.PORT);

const userRouter = require('./routes/users');
const bookRouter = require('./routes/books');
const likeRouter = require('./routes/likes');
const cartRouter = require('./routes/carts');
const orderRouter = require('./routes/orders');

app.use("/users", userRouter);
app.use("/books", bookRouter);
app.use("/likes", likeRouter);
app.use("/carts", cartRouter);
app.use("/orders", orderRouter);

Express-generator 프로젝트 구조

  • bin/www : 포트 번호 등과 같은 웹 서버를 구축하는 데에 필요한 설정 데이터가 정의 돼 있는 파일 ⇒ .env 파일과 같이 설정 값을 가지고 에러 처리, 기타 추가 설정을 해주는 파일
  • node_modules : Node.js, Express에 필요한 모듈들이 설치돼 있는 폴더
  • public : images, javascript, stylesheets 등과 같은 정적 파일(ex. 로고, 회사 소개 페이지 등등..)
    • cf. 동적파일 : 사람마다 다른 데이터를 가진 파일
  • routes : 각 경로를 담당하는 모듈들이 들어있는 폴더 ⇒ 라우팅 로직을 구현하는 모듈들 : 클라이언트에서 어떤 요청을 주냐에 따라서 어떤 로직을 수행할 지 파일별로 분할 해서 관리하는 정도 (cf. 자바의 controller 역할)
  • views : 클라이언트에게 html 코드로 “화면을 보내는 파일”
  • app.js : 서버의 시작점 ⇒ URL에 따라서 라우팅을 해줌
  • package.json : 이 프로젝트에 설치된 모듈들에 대한 이름, 버전 등등의 정보들이 작성돼 있는 파일
profile
Dive Head First | Work Super Hard | Attract Great People

0개의 댓글