반응형
게시글을 불러오기 위해 posts.js를 만들어 줍니다. findAll로 여러개의 항목을 DB에서 찾아올 수 있습니다. 시퀄라이즈의 find 메소드는 SELECT 쿼리문으로 이해하면 됩니다.
- findOne : 특정된 하나의 레코드만 찾는다
- findAll: 모든 레코드를 찾는다
보통의 SNS를 보면 1~20까지의 게시글이 있다면 최신게시글이 최상단에 위치하는것을 볼 수 있습니다. order를 통해 'DESC' 내림차순으로 설정을 하면 20~1로 최신 게시글이 제일 위에 나타나게 할 수 있습니다. 또한, 모든 게시글을 불러오기에는 컴퓨터 용량의 무리가 될 수 있으므로 인피니트스크롤 할 때 limit, offset 방식과 limit, lastId 방식으로 일정부분 게시글을 불러온 후 그 다음 게시글이 불러올 수 있도록 해줍니다.
하지만, limit, offset 방식에는 치명적인 단점이 있습니다. 게시글을 불러올 때 21번째 게시글이 생성이 되면 21~11, 11~1로 11번을 두번 불러오거나 반대로 게시글 중 하나(15번)가 삭제되었다면 20~11을 불러오고, 9~1을 불러오게 되면서 10번 게시글을 불러올 수가 없습니다. 따라서, 중간에 이슈가 생기면 limit, offset 방식은 꼬여버리게 됩니다.
limit과 lastId 방식을 많이 쓰게 됩니다. 20~11번을 가져오면 lastId가 11이 되고, limit이 10이므로 11뒤에 게시글을 10개를 가져오는 방식입니다.
morgan 설치하기
morgan은 프론트엔드와 백엔드간 어떠한 요청이 왔다갔다 하는지를 터미널에서 볼 수 있습니다.
참고자료
반응형
'NodeBird 복습 > node.js' 카테고리의 다른 글
react nodeBird 2-8 (multer, express static, 해시태그 완성하기) (0) | 2021.05.13 |
---|---|
react nodeBird 2-7 (좋아요, 게시글 삭제, 닉네임수정하기) (0) | 2021.05.11 |
react nodeBird 2-5 (게시글 댓글 완성, 로그인정보, credentials 이해하기) (0) | 2021.05.08 |
react nodeBird 2-4 (로그인완성 & 쿠키, 세션 이해하기) (0) | 2021.05.06 |
react nodeBird 2-3 (회원가입, CORS 적용하기) (0) | 2021.05.05 |