Node.js 친구가 쓴 글만 내려주기
// 친구가 쓴 글만 보여주기 //
router.post("/show_friend_feed", async (req, res) => {
const { token } = req.headers;
const post_lists = await Post.find({});
payload = jwt.verify(token, "team2-key");
const { friend_list } = await User.findOne({ _id: payload.userId })
const { name } = await User.findOne({ _id: payload.userId })
const { insta_Id } = await User.findOne({ _id: payload.userId })
friend_feed_list = []
for (let i = 0; i < post_lists.length; i++) {
if (friend_list.includes(post_lists[i]["name"]) == true) {
friend_feed_list.push(post_lists[i])
}
}
res.json({
post_list: friend_feed_list
})
});
처음엔 for문을 안 쓰고, 하려했는데, 결국 for문을 썼다..
1. post 테이블 전체를 가져온다. 나중에 클라이언트한테 뿌려 줄 friend_feed_list의 빈 배열을 만든다.
2. 1번을 post_list로 저장하고, post_list의 name값만 가져온다.
3. user테이블의 friend_list를 가져온다.
4. 나중에 클라이언트한테 뿌려 줄 friend_feed_list의 빈 배열을 만든다.
5. post_list를 for문으로 돌리고, post_list["name"]이 user["friend_list"]에 속하는지 검사한다.
6. includes를 사용하여 만약 true라면 친구가 쓴 글이니까, friend_feed_list에 push한다.
7. friend_feed_list를 뿌려준다.
'Back > Node.js' 카테고리의 다른 글
Node.js 유저인증 미들웨어 (0) | 2021.04.12 |
---|---|
Node.js passport 이용한 구글 로그인 (0) | 2021.04.11 |
Node.js 좋아요, MongoDB (0) | 2021.04.08 |
Nodejs 친구목록 친구추가 (0) | 2021.04.03 |
노드js 유저 인증하기 (0) | 2021.04.01 |