inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

따라하며 배우는 노드, 리액트 시리즈 - 기본 강의

노드 리액트 기초 강의 #33 인증 체크 (1)

질문있어요!

154

반가우면반갑다고해

작성한 질문수 142

1

서버쪽에서 /api/users/auth 경로로 온것을 처리하는 코드에서

isAdmin: req.user.role === 0 ? false : true,
isAuth: true,

isAdmin은 User모델에 기본적으로 디폴트 값이 있어서 괜찮지만 isAuth는 기본값이 안정해져있는데 false가 나올수가있나요? 성공했을때만 true가 저장되고 성공안할시 false은 안나오고 그냥 아예 없는것아닌가요? (null?)

질문 2:

hoc에 대한 질문입니다.

App.js에서 옵션으로 null,true,false를 주셧는데 

이 값은 어디서 가져오는건가요? 그냥 임의적으로 제가 여기페이지는 너만 가능해! 하면 true를 주는걸까요??

감사합니다!

nodejs react

답변 1

1

John Ahn

안녕하세요   열심히 하시는 모습 보기 너무 좋습니다 ^^ 

질문 1 답변 ) 

router.get("/auth", auth, (req, res) => {
res.status(200).json({
_id: req.user._id,
isAdmin: req.user.role === 0 ? false : true,
isAuth: true,
email: req.user.email,
name: req.user.name,
lastname: req.user.lastname,
role: req.user.role,
image: req.user.image,
company: req.user.company
});
});

여기 보시면 auth라는 middleware 보이시죠 ? 

auth 라는 미들웨어를 통과해야지만 res.status(200)을 보낼수가 있답니다 ! 

auth middleware에서 막히면  이미  막혔을떄  isAuth: false라고 정의가 되는거죠 ~ ! 

질문 2 답변 )

저기서 null, true, false로 값을 줄수 있는이유는 

/hoc/auth.js 에서 

dispatch(auth()).then(response => {
console.log(response)
//로그인 하지 않은 상태
if (!response.payload.isAuth) {
if (option) {
props.history.push('/login')
}
} else {
//로그인 한 상태
if (adminRoute && !response.payload.isAdmin) {
props.history.push('/')
} else {
if (option === false)
props.history.push('/')
}
}
})

이 부분에서  option 부분이  null 인지 true인지 false 인지에 따라 다른 액션을 취하기에 저렇게 넣어줄수있습니다 ~ ! 

감사합니다 ~ ! 

깃 이메일이랑 비번이 필요하다고 하네요

0

35

1

404 에러

0

102

1

34강 인증 체크에서 element 사용 때문에 에러나시는 분들 이렇게 하심 됩니다.

0

119

1

로그인, 로그아웃, 토근 작동 안 함

0

239

0

9강 오류 어떻게 해결하나요?

0

194

1

localhost 에서 연결을 거부했습니다.

0

1927

4

포스트맨에서 true가 안떠요

0

150

1

왜 안되나요

0

129

1

몽고db 연결 오류가 납니다 위에껀 입력한 코드, 아래껀 터미널이에요

0

243

1

로그아웃 401 에러(Unauthorized)

0

504

2

암호가 해싱되지 않고 입력값 그대로 db에 저장되는 문제

0

149

1

7강중에서

0

162

2

User.findByToken is not a function

0

211

1

루트 디렉토리

0

271

1

useState

0

560

1

프록시 잘 설정했는데도 404 오류 뜨는 분들

5

875

6

webpack 관련 에러 질문

0

219

1

리액트 관련 질문

0

272

1

14강 로그아웃 안됨

0

318

1

mongoDB 데이터 확인하는 법

0

409

1

postman 에러

0

291

1

선생님 리덕스를 사용하면 어떠한 부분이 좋은지 알 수 있을까요?

0

234

1

다음과 같은 에러들이 발생합니다.

0

273

1

14강 로그아웃 기능 구현시 postman에서 Cannot POST 오류가 뜹니다.

0

379

1