강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của kimraeyoung
kimraeyoung

câu hỏi đã được viết

Sách giáo khoa Node.js - Từ cơ bản đến thực hành dự án

hộ chiếu serializeUser/deserializeUser

mongoDB local 로그인 질문입니다

Đã giải quyết

Viết

·

307

0

mongoDB를 사용해서 local로그인을 구현하려고 하고 있습니다. 

1.  mongoose로 연결을 시킬때 admin을 꼭 사용해야 하는건가요? 아래를보면 admin부분에 dbName을 넣어도 되는데 admin을 사용하는 이유가 궁금합니다. admin을 사용하고 안하고의 차이점이 무엇인가요?

2. 강의 내용을 토대로 local로그인을 구현중인데 몇시간째 계속 달리지지 않아 제가 방향성이 잘못된것인지 질문드립니다.  제가 user를 findOne을 할 때 .then() 안에서는 user가 null 입니다. 음.. 제가 잘못된 방향으로 구현하고 있는 중인가요? 

 mongoose.connect('mongodb://localhost:27017/admin', { 
            dbName: 'nodeJS',
})
-------------- 아래는 -----------------------------
router.post('/join'async (reqresnext=> {
    const { submitEmailsubmitPassword } = req.body;

    try {
        const user = User.findOne({ email_id: submitEmail })
        console.log('-----------user-------',user)
        if(user) {
            req.flash('joinError''이미 가입된 회원입니다.');
            return res.redirect('/login');
        } else {
            console.time('암호화 시간')
            await bcrypt.hash(password12); // 숫자가 높을수록 안정성이 높고 시간이 느려진다.
            console.timeEnd('암호화 시간'// 시간이 1초정도 걸릴때 까지 숫자를 늘리거나 줄여본다.
            await new User({
                email_id: submitEmail,
                password: submitPassword
            }).save().then(()=>{
                return res.redirect('/login');
            });
            // return res.redirect('/login');
        }
    } catch (err) {
        console.log(err);
        next(err);
    }
});
nodejsmongodbmysqljavascript

Câu trả lời 2

0

kimraeyoung님의 프로필 이미지
kimraeyoung
Người đặt câu hỏi

아 감사합니다! 

0

zerocho님의 프로필 이미지
zerocho
Người chia sẻ kiến thức

await User.findOne 하셔야 합니다. 프로미스 앞에 await을 빼먹으셨네요. 그리고 await을 한 순간 then은 필요없습니다. then만 하시든지 아니면 await만 하시든지입니다.

Hình ảnh hồ sơ của kimraeyoung
kimraeyoung

câu hỏi đã được viết

Đặt câu hỏi