9/10_19일차

자햐·2024년 9월 10일
0

교육

목록 보기
18/51

백엔드 기초 : Node.js + Express 기본 (10)

router

Server와 Router의 역할

user와 channel을 합칠 것
1. Server : Request를 받습니다
2. Router : Request의 URL에 따라 루트(route)를 정해줍니다. = 어디로 갈지 길만 정해줘요
각 루트(route)에서 할 일은 그럼 누가 하나요?

"Node.js에서의" 라우팅이란?

Request(요청)이 날아왔을 때, 원하는 경로에 따라 적절한 방향으로 경로를 안내해주는 것

URL, method => 호출할 때 "콜백 함수" 부르는데, 누구 부를지 지정해주는것과 비슷함

user-demo.js의 모든 app을 router로 바꾸기

rename, channel-demo 연결, 모듈 이름 변경, use URL 설명

rename = 변수가 선언된 지점의 변수를 rename 하는 방법 : F2를 누르기
누른 후 안내 메세지창(대충 연동할거냐는 얘기)이 뜨면 예 누르기
결과 : 그 변수를 사용했던 지점이 바뀐 변수명으로 교체됨

모듈 이름 변경

회원마다 채널 가지게 ERD 그려보기

회원 1명당 채널을 여러 개 가져야 함

채널 생성 페이지 : 채널 생성 버튼 클릭 시 => 입력받은 채널명을 받아서, 채널 생성(등록) API

간단하게 ERD 고려해보기

데이터베이스에서는 일반적으로 스네이크 방식으로 변수명을 지음

채널 API 설계 수정, 채널 생성 테스트

채널 API 설계(URL, http method/status, req/res)

1) 채널 "생성" : POST /channels

  • req : body(channelTitle, userId) cf. userId는 body X, header로 숨겨서 Token으로 받을 것..
  • res 201: ${channelTitle}님 채널을 응원합니다. -> 다른 페이지 띄워주고 싶어.. ex. 채널 관리 페이지

2) 채널 "수정" : PUT /channels/:id

  • req : URL(id), body(channelTitle)
  • res 200: 채널명이 성공적으로 수정되었습니다. 기존 ${} -> 수정 ${}

3) 채널 "삭제" : DELETE /channels/:id

  • req : URL(id)
  • res 200: 성공적으로 삭제되었습니다. -> 메인 페이지로 가기

4) 회원의 채널 전체 "조회" : GET /channels

  • req : body(userId)
  • res 200 : 채널 전체 데이터 list, json array

5) 채널 개별 "조회" : GET /channels/:id

  • req : URL(id)
  • res 200 : 채널 개별 데이터

1번 작업 함

회원 채널 조회, id없으면 예외 처리

4번 작업 함

아아아아아아아아아아아아악

id없으면 예외 처리 if문 고도화

..

백엔드 기초 마무리

(눈물..)
vscode에서 Youtube-demo파일 확인할 것

profile
산업과 예술의 만남에 있는 예비 개발자..

0개의 댓글