인프런 커뮤니티 질문&답변
GET http://localhost:3065/undefined 404 (Not Found) 에러질문입니다.
작성
·
935
0
홈페이지를 접속할때만 다음과 같은 클라이언트 에러가 발생해서 질문드립니다.
.png)
.png)
.png)
.png)
.png)
이미지를 참조하는 부분에서 에러가 발생하는 것 같아서 이미지를 참조하는 다른 페이지를 확인해봤는데 홈페이지에서만 해당 에러가 발생하고 있습니다.
모든 action은 정상적으로 동작하며 서버쪽의 이미지도 정상적으로 저장되어 있습니다.
혹시 어떤 부분에서 문제가 발생한건지 힌트를 조금 주시면 감사하겠습니다.
postcard
cover={
<CardImageWrapper>
<ImageWrapper alt="post image" src={`http://localhost:3065/${post.Images[0]?.src}`} onClick={showPostModal} />
</CardImageWrapper>
}
reducer
case LOAD_POSTS_REQUEST:
draft.loadPostsLoading = true;
draft.loadPostsDone = false;
draft.loadPostsError = null;
break;
case LOAD_POSTS_SUCCESS:
draft.loadPostsLoading = false;
draft.loadPostsDone = true;
draft.firstPageLoad = false;
draft.mainPosts = draft.mainPosts.concat(action.data);
draft.hasMorePosts = action.data.length === 10;
break;
case LOAD_POSTS_FAILURE:
draft.loadPostsLoading = false;
draft.loadPostsError = action.error;
break;
saga
function loadPostsAPI(lastId) {
return axios.get(`/posts?lastId=${lastId || 0}`);
}
function* loadPosts(action) {
try {
const result = yield call(loadPostsAPI, action.lastId);
yield put({
type: LOAD_POSTS_SUCCESS,
data: result.data,
})
} catch(err) {
yield put({
type: LOAD_POSTS_FAILURE,
error: err.response.data
})
}
}
router
router.get('/', async (req, res, next) => { // loadPostsAPI / GET /posts
try {
const where = {};
if (parseInt(req.query.lastId, 10)) {
where.id = { [Op.lt]: parseInt(req.query.lastId, 10) };
}
const posts = await Post.findAll({
where,
limit: 10,
order: [
['createdAt', 'DESC'],
[Comment, 'createdAt', 'DESC'],
],
include: [{
model: User,
attributes: ['id', 'nickname'],
}, {
model: Image,
}, {
model: Comment,
include: [{
model: User,
attributes: ['id', 'nickname'],
}],
}, {
model: User,
as: 'Likers',
attributes: ['id'],
}],
});
console.log(posts);
res.status(200).json(posts);
} catch (error) {
console.error(error);
next(error);
}
});




감사합니다!! 말씀대로 이미지가 없는 게시글때문에 해당 오류가 발생했었네요 덕분에 잘 해결됬습니다.
그리고 해당 강의와는 관련없는 질문이긴한데 혹시 라우터에서 매핑테이블에 컬럼에 접근하는 방법은 없을까요?
마이페이지에 접근할 때 좋아요한 게시글을 가져오는 기능을 만들고 있습니다.
그래서 다음과 같이 where조건절에 Like테이블의 PostId를 사용하고 싶은데
혹시 방법이 있을까요?