본문 바로가기

분류 전체보기75

MongoDB Router 연결 const { MongoClient } = require('mongodb');const url = process.env.DB_URLlet connectDB = new MongoClient(url).connect()module.exports = connectDB;몽고DB 클라이언트를 부르고, connectDB 변수에 url.connect()를 해서 넣어주고 server.js에서 사용하기 위해 module.exports를 해준다.// MongoDB 연결let connectDB = require('./router/db.js')let dbconnectDB.then((client) => { db = client.db('forum') app.listen(process.env.PORT, () => { con.. 2024. 2. 16.
라우터 설정 node.js 강의를 한번 듣고나서 복습을 위해 처음부터 다시 해보고 있다. 그러던 중 저번 강의때는 server.js파일안에 모든 get, post, put, delete 등 많은 라우터를 한 파일에 넣어서 사용했더니, 가독성이 정말 문제가 많고 어느 부분에는 이상한 자료가 생기고 어디가 오류가 발생하는지 쉽게 알지 못해서 이번 복습할 때는 라우터를 이용해 정리하고 넘어가도록 해야겠다.const express = require('express')const post = require('./router/routs')const app = express()const PORT = 8080app.use('/post_page', post)app.listen(PORT, () => { console.log(`http.. 2024. 2. 16.
server.js app.use(passport.initialize())app.use(session({ secret: `${password}`, resave : false, saveUninitialized : false, cookie : { maxAge : 60 * 60 * 1000 }, store : MongoStore.create({ mongoUrl : `mongodb+srv://sikim0721:${password}@cluster0.tqbj5n0.mongodb.net/?retryWrites=true&w=majority`, dbName : "forum" })}))app.use(passport.session())passport 초기화를 통해 passport라이브러리를 사용할 수 있도록 한다.이제 세.. 2024. 2. 10.
Login - MongoDB MongoDB가 연결되어 있지 않으면 페이지를 띄워도 오류가 발생한다. 항상 DB를 연결시켜놓고 테스트 해봐야 된다. 회원가입을 하면 DB에 회원정보가 담긴다.유저가 get, post요청을 하면 서버로부터 입장권을 받고, 서버는 입장권 확인 후, 데이터 or 페이지를 보내준다. 입장권이란?브라우저의 쿠키를 의미한다. 쿠키는 서버로 요청을 전송할 시, 자동으로 전송되서 클라이언트에 자동저장시킨다. 1. Session 방식유저가 로그인하고 입장권을 발급할 때 session id를 동봉한다.유저가 get or post 요청을 보내면 서버는 session id cmp DB 데이터를 한뒤, 이상 없으면 요청을 진행한다.  장점은 엄격한 검사, 단점은 DB의 부담이 심하다. 2. Token 방식JSON Web To.. 2024. 2. 9.