inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[리뉴얼] Node.js 교과서 - 기본부터 프로젝트 실습까지

패스포트 사용하기

return 유무

247

tnwjdrms

작성한 질문수 10

0

routes/ page.js

router.get('/profile', (req, res) => {
res.render('profile', { title: '내 정보 - NodeBird' });
});

router.get('/join', (req, res) => {
res.render('join', { title: '회원가입 - NodeBird' });
});

router.get('/', (req, res, next) => {
const twits = [];//메인게시물들
res.render('main', {
title: 'NodeBird',
twits,
})

})

에서는 return 문을 쓰지 않는데 

routes/auth.js 와 같이

outer.post('/join', async (req, res, next) => {
const { email, nick, password } = req.body;
try{
const exUser = await User.findOne({ where: {email} });
if (exUser){
return res.redirect('/join?error=exist'); //front에서 query보고 처리
}
const hash = await bcrypt.hash(password, 12);
await User.create({
email,
nick,
password: hash,
});
return res.redirect('/');
} catch(error){
console.error(error);
return next(error);
}
});

return 으로 next(error)나 res.render 등등 을 해주는 이유가 뭔가요?

nodejs mongodb mysql Sequelize

답변 2

0

tnwjdrms

아 그렇군요! 감사합니다😁

0

제로초(조현영)

명시적으로 함수가 종료된다는 것을 보여준 거고요. 위 예제에서는 안 붙여도 되지만 붙이는 습관을 들이는 게 에러가 안 나서 좋습니다. 잘못해서 res 메서드가 두 번 이상 호출되면 cannot send header twice라는 에러 발생하거든요.

리눅스 노드 설치시 패키지

0

159

0

socket.js 에서 referer로부터 roomId를 가져올 때

0

905

3

스트리밍 방식으로 대용량 파일 업로드 & 다운로드 관련 질문

0

2281

2

a[title] 질문드립니다

0

375

1

리뉴얼 강의 및 공부 방법

0

581

1

jwt decode

0

1128

1

node.js 교과서 3판 질문드립니다

0

391

1

passport와 jwt

0

432

1

리뉴얼 강의

0

418

2

혹시 Node.js 교과서 3판 이북은 언제 나오나요?

0

353

1

몽고디비 사용자도 MYSQL부분을 들어야 하나요???

0

481

1

sql 쿼리 로그는 어떤 모듈이 작성하나요?

0

505

2

nunjucks res.render('error'); 작동을 안합니다.

0

511

1

질문있습니다.

0

346

1

multer 한글 파일 업로드시 파일명이 깨져요.

1

3535

1

수업자료는 어디있나요?

0

366

1

질문 있습니디

0

235

1

multer 사용시 file 외 name값은 못받나용?

0

416

1

코드 중복 부분 질문드립니다.

0

298

1

api 만드는 이유 질문드립니다.

0

286

1

Strategy의 done에 대해 질문드립니다.

0

364

1

안녕하세요 fs 권한 관련 질문드립니다

0

448

1

시퀄라이즈 연결질문...

0

495

2

res.setHeader vs res.cookie

0

1786

3