Auth 인증이 안됩니다
290
장우진
작성한 질문수 3
0
User.js
userSchema.methods.generateToken = function(cb) {
//로그인 시 토큰 생성
// user id + 'loginToken'을 암호화
var user = this;
var token = jwt.sign(user._id.toHexString(),'loginToken')
user.token = token;
user.save(function (err, user){
if(err) return cb(err)
cb(null, user);
})
}
userSchema.statics.decodeToken = function (token, cb) {
//토큰을 복호화 하여 _id를 얻고 이를 데이터베이스에서 조회
var user = this;
jwt.verify(token,'loginToken',function(err, decode){
user.findOne({'_id':decode, 'token':token}, function(err, user){
if(err) return cb(err);
cb(null, user);
})
})
}
auth.js
const { User } = require('../models/User')
let auth = (req, res, next) => {
//로그인 인증 처리
//클라이언트 쿠키에서 토큰 가져오기
let token = req.cookies.x_auth
//토큰 복호화 후 데이터베이스에서 유저 정보 찾기
User.decodeToken(token, (err,user)=>{
if(err) throw err
if(!user) {
return res.json({
authentication : false,
error : true,
message: '토큰 정보가 존재하지 않습니다.'
})
}
//호출된 곳의 req로 token과 user정보 보냄
req.token = token
req.user = user
next()
})
}
module.exports = { auth }
데이터베이스 user 인스턴스에 쿠키와 같은 토큰이 저장되어있는데 자꾸만
if(!user) {
return res.json({
authentication : false,
error : true,
message: '토큰 정보가 존재하지 않습니다.'
})
}
이쪽으로 들어가요,, 어떤 것이 문제일까요?
답변 4
깃 이메일이랑 비번이 필요하다고 하네요
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





