express - flash 미들웨어

회원가입 페이지에서 오류 메세지를 출력할 때, res.render()로 매번 렌더링을 하니 오류메세지는 원하는 대로 매번 바뀌면서 출력됐지만 새로고침 시에 양식 제출을 확인하라는 메세지가 떠서 res.redirect() 로 해야한다는 걸 깨달았다.

redirect 할 주소로 오류메세지를 넘겨주는 방법이 필요했는데, 마침 딱 알맞는 미들웨어가 flash 미들웨어였다.

flash 미들웨어는 req 객체에 (key, value) 를 담아 주고 받게 되는데, 처음 한 번 넘겨 주고, 받고 하면 사라진다. 즉 일회성이다. 따라서 일회성 경고메세지, 오류메세지에 적합하다.

먼저 connect-flash 를 npm으로 설치해준다.

npm i connect-flash

그 다음, import





flash 미들웨어는 쿠키, 세션을 사용하기 때문에 뒤에 붙여준다.















키값은 tryMsg로 만들어서 redirect 해주고,





받은 곳에선 tryMsg로 value 값을 찾아준다.


중복 회원가입 시 다음 메세지가 뿌려지고,



새로고침하면 일회성이기 때문에 사라진다!


댓글

이 블로그의 인기 게시물

HTML - input file 버튼 꾸미기

HTML - 이미지 미리보기(jQuery 없이)

BOJ - DNA 유사도(2612)