728x90
[ 이 내용은 항해99 3주차 수업 배운 사람을 위한 내용입니다.]
[몽구스, express.js, vscode를 못만져 보셨다면 어려울수 있습니다.]
요구사항
- 전체 게시글 목록 조회 API
- 제목, 작성자명, 작성 날짜를 조회하기
- 작성 날짜 기준으로 내림차순 정렬하기
- 게시글 작성 API
- 제목, 작성자명, 비밀번호, 작성 내용을 입력하기
- 게시글 조회 API
- 제목, 작성자명, 작성 날짜, 작성 내용을 조회하기 (검색 기능이 아닙니다. 간단한 게시글 조회만 구현해주세요.)
- 게시글 수정 API
- API를 호출할 때 입력된 비밀번호를 비교하여 동일할 때만 글이 수정되게 하기
- 게시글 삭제 API
- API를 호출할 때 입력된 비밀번호를 비교하여 동일할 때만 글이 삭제되게 하기
- 댓글 목록 조회
- 조회하는 게시글에 작성된 모든 댓글을 목록 형식으로 볼 수 있도록 하기
- 작성 날짜 기준으로 내림차순 정렬하기
- 댓글 작성
- 댓글 내용을 비워둔 채 댓글 작성 API를 호출하면 "댓글 내용을 입력해주세요" 라는 메세지를 return하기
- 댓글 내용을 입력하고 댓글 작성 API를 호출한 경우 작성한 댓글을 추가하기
- 댓글 수정
- 댓글 내용을 비워둔 채 댓글 수정 API를 호출하면 "댓글 내용을 입력해주세요" 라는 메세지를 return하기
- 댓글 내용을 입력하고 댓글 수정 API를 호출한 경우 작성한 댓글을 수정하기
- 댓글 삭제
- 원하는 댓글을 삭제하기
구성
.
├── app.js : 전체를 돌리기 위해 필요
├── routes : API를 넣기 위한 폴더
│ ├── comments.js : 댓글 API를 구현하기 위한 js
│ └── posts.js : 게시글 API를 구현하기 위한 js
└── schemas : 데이터를 받고 저장하기 위한 폴더
├── index.js : 몽구스 연결하기 위한 경로
├── comment.js : 댓글 뼈대 작업
└── post.js : 게시글 뼈대 작업
1. 뼈대 작업(Schema)
1-1) post.js :
- 몽구스와 라이브러리 연결
- 몽구스 안에 들어갈 게시글 뼈대 작성
- module을 나갈 exports를 작성
1-2) comment.js :
- 몽구스와 라이브러리 연결
- 몽구스 안에 들어갈 게시글 뼈대 작성
- module을 나갈 exports를 작성
1-3) index.js :
- 몽구스와 라이브러리 연결
- 2. 설치한 몽고디비에 접근 & 에러 설정
- 3. module을 나갈 exports를 작성
2. API 작업(Routes)
2-1) posts.js :
- express 연결 & schema에서 만든 뼈대 연결 & 라우터 연결
- 게시글 전체 조회(GET) 이용 : 조회해야하므로 find로 불러오고, 반복문 돌려서 배열에 넣고, res.json 대입
- 게시글 상세 조회(GET) 이용 : ID가져와서 그 ID에 해당하는 값을 find로 불러오고, 해당하는 값을 res.json 대입
- 게시글 작성(POST) 이용 : res.body로 값을 받아오고, create로 넣고, res.json 대입
- 게시글 수정(PUT) 이용 : res.params, body로 값을 받아오고, id 값을 find를 하고 updateOne을 이용하여 수정 후, res.json대입
- 게시글 삭제(DELETE) 이용 : res.params, body로 값을 받아오고, 비밀번호 비교 후, 맞으면 삭제
2-2) comments.js :
- express 연결 & schema에서 만든 뼈대 연결 & 라우터 연결
- 댓글 생성(POST) 이용 : ID가져와서 값을 받아와서, create로 넣고, res.json 대입
- 댓글 수정(PUT) 이용 : res.params, body로 값을 받아오고, id 값을 find를 하고 updateOne을 이용하여 수정 후, res.json대입
- 댓글 삭제(DELETE) 이용 : res.params, body로 값을 받아오고, 비밀번호 비교 후, 맞으면 삭제
3. 전체 작업(App.js)
- express 연결 & schema, routes 만든거 연결 & connect & express.json & 포트 연결
https://github.com/talli0505/node.js_sparta
GitHub - talli0505/node.js_sparta
Contribute to talli0505/node.js_sparta development by creating an account on GitHub.
github.com
728x90
'항해 일지' 카테고리의 다른 글
Nginx + https연결 사용법 (0) | 2022.11.02 |
---|---|
게시글, 댓글, 좋아요 형태 만들기 (0) | 2022.10.11 |
[항해9기] 알고리즘 모의고사 문제 (0) | 2022.09.28 |
[항해 99기 9기] 2주차 JavaScript 과제 (1) | 2022.09.23 |
[Chapter 1] 5조 S.A(Starting Assignment) (1) | 2022.09.19 |