Node.js

Node.js - 2

imysydesu 2026. 6. 29. 15:56

 

 

 

 

1 . 게시물 작성

 

 

 

 

 

 

=> 어떤 순서대로 작성했는지 생각하기

 

 

 

기본으로 작성하는 내용

 

 

 

 

 

 

1 - 1 . 게시물 저장

 

 

 

 

 

 

ejs 파일

 

 

 

 

 

js 파일

 

=> 위에서 data 폴더에 posts.txt 파일을 만들어 저장한다 선언했으므로 해당 파일이 생성됨

=> 경로는 /posts이므로 접속 경로는 127.0.0.1:3000/posts임

=> 내용은(body) title과 content로 두 가지임 appendFile을 통해 기존 파일의 끝에 내용을 추가하며 리스트를 생성해냄

 

=> redirect() : 페이지를 이동 시킴, get으로만 가능

 - 내용(title, content)을 추가할 때 오류가 나지 않았으면 /posts 경로로 페이지 이동

 

 

 

 

 

 

 

1 - 2 . 게시물 리스트

 

 

 

 

=> 게시물 저장에서 만든 내용들을 가지고 리스트를 생성

=> readFile()을 사용해 리스트를 읽어줌

 

 

 

 

 

 

 

 

1 - 3 . 게시물 작성

 

 

 

 

 

ejs 파일

 

 

 

 

js 파일

 

=> get만 사용 가능

 

 

 

 

 

 

 

 

 

 

마지막에 실행

 

 

 

 

 

 

 

 

 

 

 

 


 

 

 

2 . json요청

 

 

 

 

 

 

 

  • Express에서 JSON 데이터를 처리하는 흐름
  • 클라이언트(요청) -> Express 서버 -> JSON 파싱 -> req.body로 접근 -> 로직 처리 -> JSON 응답

 

 

 

 

미들웨어 등록

 

 

 

post로 json 데이터 받기

 

 

 

json 응답 보내는 방법

 

 

 

유효성 검사

 

 

 

 

 

 

 

API 주소(URL) 구성 원칙

 

 

 

  • API 주소 : 단순한 경로가 아니라 리소스를 표현하는 구조적인 설계 요소
  • RESTful  설계 원칙에 따라 구성하는 것이 가장 일반적

 

 

 

/api/버전/리소스

 

  • api  : API임을 명시
  • v1 : 버전 관리
  • users : 리소스(자원), 명사로 작성

 

 

 

 

RESTful (Representational State Transfer)

 

  • url과 http 메서드를 이용해 자원을 직관적이고 일관성 있게 설계하는 웹  api 방식

 

  • http 메서드
    •  GET : 조회
    • POST : 생성
    • PUT : 수정(put : 전체 수정, patch : 부분 수정)
    • DELETE : 삭제

 

 

 

 

 

 

2 - 1 . 생성

 

 

 

2 - 2 . 조회

 

 

 

 

2 - 3 . 전체 수정

 

 

 

 

2 - 4 . 부분 수정

 

 

 

 

2 - 5 . 삭제

 

 

 

 

 

 

 

 


 

 

 

 

 

 

3 . 모듈

 

 

 

 

 

  • 자바스크립트 모듈은 코드의 재사용성과 유지보수성을 높이기 위해 기능을 개별 파일로 분리하여 사용할 수 있도록 해주는 구조

 

 

  • CommonJS 방식의 모듈

 

 

 

 

  • ES6 방식의 모듈

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

 

4 . 라우팅

 

 

 

 

 

 

 

라우트

 

 

 

  • 웹 애플리케이션에서 클라이언트가 요청한 URL 경로와 HTTP 메서드에 따라 서버가 어떤 동작을 수행할지를 정의하는 규칙

 

 

 

 

 

 

 

  • ex)

 

=> mjs 파일로 생성 : import 사용 가능

 

 

 

 

 

 

status

 

 

 

  • 서버가 요청 결과를 어떤 상태로 처리했는지 알려주는 번호

 

  • 1xx :  요청 처리 중 (잘 사용하지 않음)
  • 2xx : 성공
    • 200 : 요청 성공
    • 201 : 데이터 생성 성공(수정 등)
  • 3xx : 다른 주소로 이동
    • 301 : 주소 변경
    • 302 : 임시로 변경
  • 4xx : 사용자 요청에 문제 발생
    • 401 : 로그인 필요
    • 403 : 접근 금지
    • 404 : 페이지 없음
  • 5xx : 서버 문제
    • 500 : 서버 오류

 

 

 

 

 

 

 

 


 

 

 

 

 

 

 

5 . 라우트 활용(ES6 활용)

 

 

 

 

 

 

5 - 1 . mjs 파일 생성 (/routes/user.mjs)

 

 

 

 

 

 

5 - 2 . user.mjs 파일을 가져올 새 파일 생성

 

 

 

 

 

 

 

 

 

 

 


'Node.js' 카테고리의 다른 글

메모 앱 만들기 - frontend  (0) 2026.07.07
메모 앱 만들기 - backend  (1) 2026.07.07
MongoDB  (0) 2026.07.06
Node.js - 1  (0) 2026.06.26