게시글
질문&답변
안녕하세요 회원가입 후 메인페이지 이동 질문입니다
안녕하세요 질문 부탁드립니다 passport.serializeUser((user, done)=>{ //user id만 뽑아서 done 해준다 console.log("로그인네번째") // done(null, user.id); console.log(user.id) done(null, user.id); //세션에 user의 id만 저장 //done이 실행되면 auth로 간다 }); passport serialize하면 session에 id:1, 'connect.sid' .....이렇게 저장된다고 하셨는데 (사진) 이렇게 id가 들어가지 않습니다 console에서 찍어보면 Executing (default): SELECT `id`, `number`, `password`, `birth`, `provider`, `gender`, `createdAt`, `updatedAt`, `deletedAt` FROM `Users` AS `User` WHERE (`User`.`deletedAt` IS NULL AND `User`.`number` = '01012341234'); 로그인세번째 1 로그인네번째 1 로그인다섯번째 POST /auth/login 200 277.213 ms - 25 id가 잘 찍히긴 합니다 왜 그런건가요? 혹시 리다이렉트 안 써서 그런건가요? 추가로 유저의 마이 페이지로 들어갈 때 세션에 있는 정보를 통해 deserialize 로 해서 유저 정보를 마이페이지에 보여주는 것 로그인 하면 마이페이지 프론트로 유저 정보 보내줘서 마이페이지 들어가면 유저 정보를 보여주게 하는 것 둘 다 가능한건가요?
- 0
- 5
- 587
질문&답변
안녕하세요 회원가입 후 메인페이지 이동 질문입니다
안녕하세요 회원가입 성공하면 로그인페이지로 돌아가게 할려 합니다 그래서 로그인 url인 login_htnl.login.html을 redirect 했더니 304 뜨면서 성공했지만 페이지 이동은 되지 않았습니다 터미널에서도 304라고만 나오고 다만 network tap에서 status code가 304 not modified라고 나왔습니다 수정되지 않음 리다이렉트를 저렇게 하면 안 되는 건가요? 왜 페이지가 이동하지 않는건가요? auth.js router.post('/join', isNotLoggedIn, async(req, res, next)=>{ console.log(req) const { number, password, birth, gender } = req.body; try{ const exUser = await User.findOne({where : {number}}); if(exUser){ // return res.sendStatus(444); return res.redirect('/join?error=exist'); } const hash = await bcrypt.hash(password, 12); await User.create({ number, birth, gender, password: hash, }); console.log('회원가입 성공') return res.redirect('/login_html/login.html'); }catch(error){ console.error(error); return next(error); } });
- 0
- 5
- 587
질문&답변
안녕하세요 회원가입 후 메인페이지 이동 질문입니다
안녕하세요 회원가입 성공하면 다시 로그인 페이지로 돌아갈려고 합니다 auth.js const express = require('express'); const passport = require('../passport'); const bcrypt = require('bcrypt'); const { isLoggedIn, isNotLoggedIn } = require('./middlewears'); const User = require('../models/user'); const router = express.Router(); router.post('/join', isNotLoggedIn, async(req, res, next)=>{ console.log(req) const { number, password, birth, gender } = req.body; try{ const exUser = await User.findOne({where : {number}}); if(exUser){ return res.redirect('/join?error=exist'); } const hash = await bcrypt.hash(password, 12); await User.create({ number, birth, gender, password: hash, }); console.log('회원가입 성공') return res.redirect('/page/login'); }catch(error){ console.error(error); return next(error); } }); app.js app.use('/page', pageRouter); app.use('/auth', authRouter); page.js const express = require('express'); const { isLoggedIn, isNotLoggedIn } = require('./middlewears'); const router = express.Router(); router.use((req, res, next)=>{ res.locals.user = null; next(); }) router.get('/login', isNotLoggedIn, (req, res)=>{ res.sendFile(path.join(__dirname, 'static/login_html/login.html')) }); (사진) db에는 회원가입한 정보가 들어가 있는데 패이지는 변경되지 않습니다
- 0
- 5
- 587
질문&답변
안녕하세요 회원가입 후 메인페이지 이동 질문입니다
흠...req.user하고 sendFile하고 따로 작성하면 동작이 되는건가요? 어떻게 작성해야할지 감이 안 오네요..
- 0
- 5
- 587
질문&답변
질문 부탁드립니다
감사합니다! html div class="join__main__phone"> h3>휴대전화 번호h3> input type="number" placeholder="'-' 구분없이 입력해주세요" id="number" onchange="printNum()" /> button>인증번호 전송button> div> js function printNum(){ userNum = document.getElementById('number').value; console.log(userNum); } 입니다
- 0
- 4
- 807
질문&답변
질문 부탁드립니다
넵 감사합니다 html의 정보를 axios를 통해 서버로 보낼려합니다 html에서 onclick 으로 js파일에서 유저 정보를 받습니다 그런데 html에서 script src="https://unpkg.com/axios/dist/axios.min.js">script> 이거 추가하면 html의 onclick이 undefined이고 npm으로 axois추가해서 js파일에서 import axios from 'axios'; 하면 js파일의 함수들이 undefined입니다 axios를 통해 서버로 보내주는 js파일에만 type을 모듈로해서 import axios from 'axios'; 이렇게 하면 Failed to resolve module specifier "axios". Relative references must start with either "/", "./", or "../". 이 오류가 뜹니다 어떻게 해결할 수 있을까요?
- 0
- 4
- 807
질문&답변
질문 부탁드립니다
혹시 nunjucks나 ejs 안 쓰고 html 파일만 불어오게 할 수 있나요?
- 0
- 4
- 807
질문&답변
.env 질문입니다
js 파일 안에 있는 키도 마찬가지겠죠?
- 0
- 2
- 237
질문&답변
질문 부탁드려요
따라해봤는데 ERROR 2006 (HY000): MySQL server has gone away No connection. Trying to reconnect... Connection id: 8 Current database: *** NONE *** ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'BY 'sion1129'' at line 1 이렇게 뜹니다 감사합니다
- 0
- 3
- 551
질문&답변
404 질문입니다
해결완료입니다!
- 0
- 1
- 136