일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 |
- 문서화의 중요성
- nuxt
- PyQt5
- vue
- Pomy
- iterm
- dbglass
- Be Focused
- PSequel
- browsed-based
- nuxtjs/auth
- awscli
- Roboto Mono
- dbeaver
- ant design vue
- vue-design
- iview
- Qt Designer
- oh-my-zsh
- Tomato One
- zshrc
- vue.js
- element-ui
- pgAdmin
- IAM
- MAC
- 터미널
- AWS
- pip3
- pomodoro
- Today
- Total
개발노트
nuxtjs/auth module redirect 안 될 때 본문
nuxtjs에서 인증, 페이지 제한 등을 하기 위해서 그 동안 쿠키와 로컬스토리지 등을 이용해 직접 구현해야 했는데, 이제는 auth 모듈이란 게 나왔다.
냉큼 적용하려고 했는데 이상하게 안 되는 게 있다.
먼저, auth 모듈에 대해 간단히 설명한다.
-
yarn add @nuxtjs/auth
로 설치한다. -
nuxt.config.js에 auth 관련 설정을 추가한다.
-
만약 nuxt.config.js에서 router의 middleware에 auth 모듈을 추가하면, 이 nuxt 프로젝트의 모든 페이지는 라우팅될 때 로그인 여부를 검사한다.
-
이 때 특정 페이지, 예컨데 index 페이지처럼 로그인하지 않아도 볼 수 있어야 페이지인 경우
auth: false
를 적용한다.
<script>
export default {
auth: false
}
</script>
자세한 사용방법은 홈페이지에도 나와있는 유투브를 보자. 문서가 그지같다. 나는 유투브를 보고서야 사용할 수 있었다. Nuxt Auth - Authentication and Authorization in NuxtJS
나에게 생긴 문제는 이렇다. 예를 들어 로그인하지 않은 상태에서 /profile/change 이란 페이지에 접근했다고 하자. 그러면 auth 모듈을 잘 설정했다면 login 페이지로 리다이렉팅된다. login 페이지에서 로그인을 하면, 쿠키와 로컬스토리지에 auth.redirect 라는 키에 /profile/change
가 생성된다. 이 상태에서 로그인을 하면 auth.redirect에 저장된 페이지로 리다이렉팅한다.
삽질을 2~3일을 했다. 어처구니없게도 해결방법은 간단하다. 참고: Not redirecting after login when going directly on the route. login 페이지는 로그인 안 된 상태에서 접근할 수 있어야 하기 때문에 auth: false로 설정했는데, 이 코드를 빼면 된다.
<script>
export default {
// auth: false
}
</script>
공식문서에서 로그인 페이지에는 저 옵션 주지 말라고 한 줄 쓰면 될 일을... Not redirecting after login when going directly on the route 이 이슈에서 가장 좋아요, 사랑해요, 하트뿅뿅 선택받은 댓글이 아니었으면, 나를 포함한 수 많은 중생들이 고통받았을 것이다.
'Vue, Nuxt' 카테고리의 다른 글
Nuxt/Auth 모듈 적용하기 (0) | 2019.12.06 |
---|---|
nuxt앱에 vue-design(iView) 적용하기 (0) | 2019.12.06 |
Vue UI Framework 비교 (0) | 2019.12.06 |