try catch문이 있는데 if문으로 에러처리를 따로 하는 이
router.get("/", async (req, res, next) => {
try {
if (req.user) {
// findOne에서 에러가 생기는 거는 try catch문으로 처리가 안된
const user = await User.findOne({
where: { id: req.user.id },
});
res.status(200).json(user);
} else {
res.status(200).json(null);
}
} catch (error) {
console.error(error);
next(error);
}
});이부분에서 아직 로그인을 하지 않아서 유저 정보가 없을때 User.findOne에서 에러가 나기 때문에 if문으로 감싸서 아직 유저정보가 없을 때를 예외 처리 해주셨는데 어차피 User.findOne에서 에러가 나면 catch문으로 이동해서 에러가 처리가 되는데 굳이 if else로 예외 처리 하신 이유가 있나요?
답변 1
0
else 부분을 보시면 되지 않을까요? ㅎㅎ 그리고 findOne에서 에러가 나는게 아니라 req.user.id에서 타입에러가 나는 겁니다.
catch로 보내서 처리한다고 해도 catch에서는 어떻게 처리하실 건가요?
0
redux devtools로 확인해 봤을때 제가 redux devtools로 구현을 해서 else를 쓰게 되면 fulfilled로 처리가 되어서 payload에 null이 들어오게 되고
else문을 안쓰게 되면 rejected로 처리가 되어서 error가 됐다고 나옵니다 에러 처리방식? 사용자에게 에러를 보여주는 방식이 다르다고 생각이 드는데 기호에 따라 사용하면 되나요?
0
redux devtools로 구현을 했다는 게 무슨 말씀이신가요?
req.user.id에서 req.user가 없어서 req.user.id에서 에러가 나는 상황은 명백한 서버 잘못입니다. (타입에러) 그걸 방치하고 프론트에 에러를 보내서 프론트에서 에러를 처리하게 하는 것은 말도 안 되는 짓입니다. 서버 개발자의 자격이 없는 것이고 저라면 바로 해고합니다. 기호의 문제가 아니라 매우 심각한 상황인 겁니다.
0
ㅎㄷㄷ 그렇군요 redux devtools로 구현을 했다는 것은 redux toollkit으로 구현했다고 해야했는데 제가 잘못 적었네요 죄송합니다
프론트에러와 백앤드에러는 확실히 구분을 해서 사용해야겠군요 감사합니다!
넥스트 버젼 질문
0
78
2
로그인시 401 Unauthorized 오류가 뜹니다
0
89
1
무한 스크롤 중 스크롤 튐 현상
0
175
1
특정 페이지 접근을 막고 싶을 때
0
103
2
createGlobalStyle의 위치와 영향범위
0
96
2
인라인 스타일 리렌더링 관련
0
91
2
vsc 에서 npm init 설치시 오류
0
146
2
nextjs 15버전 사용 가능할까요?
0
158
1
화면 새로고침 문의
0
121
1
RTK에서 draft, state 차이가 있나요?
0
153
2
Next 14 사용해도 될까요?
0
452
1
next, node 버전 / 폴더 구조 질문 드립니다.
0
349
1
url 오류 질문있습니다
0
211
1
ssh xxxxx로 우분투에 들어가려니까 port 22: Connection timed out
0
373
1
sudo certbot --nginx 에러
0
1275
2
Minified React error 콘솔에러 (hydrate)
0
470
1
카카오 공유했을 때 이전에 작성했던 글이 나오는 버그
0
247
1
프론트서버 배포 후 EADDRINUSE에러 발생
0
327
1
npm run build 에러
0
518
1
front 서버 npm run build 중에 발생한 에러들
0
382
1
서버 실행하고 브라우저로 들어갔을때 404에러
0
338
2
css 서버사이드 랜더링이 적용되지 않아서 문의 드립니다.
0
288
1
팔로워 3명씩 불러오고 데이터 합쳐주는걸로 바꾸고 서버요청을 무한으로하고있습니다.
0
239
2
해시태그 검색에서 throttle에 관해 질문있습니다.
0
201
1





