본문 바로가기

전체 글45

미들웨어란? 미들웨어란? 요청과 응답 사이에 위치한 함수이다. (밑에와 같이 생긴 함수) app.use(); app.get("/", (req, res, next) => {}); 개발에 도움을 주는 미들웨어로 cookie-parser, body-parser, cors, morgan 등이 있다. 별도로 설치를 하여 사용하였지만, 요즘은 대부분 미들웨어가 express에 내장되어 있다. 미들웨어 위에서 아래로 순서대로 실행된다. 요청(req), 응답(res)을 조작할 수 있다. next를 사용하여 다음 미들웨어로 넘어갈 수 있다. 에러처리 미들웨어 app.use((err, req, res, next) => { console.error(err.stack); res.status(500).send("Something broke.. 2021. 11. 1.
node 서버(app.js 코드 구조) app.js 코드 구조 node로 서버를 만들때, app.js에 작성하는 코드는 대부분 프로젝트에서 비슷한 구조를 가지기 때문에 자주 설치하는 미들웨어나 패키지에 대해서 알아 놓으면 좋다. (여기서 app.js는 서버 구동의 핵심이 되는 파일이다.) npm install express express-session cookie-parser morgan dotenv const express = require("express"); const session = require("express-session"); const cookieParser = require("cookie-parser"); const morgan = require("morgan"); const dotenv = require("dotenv");.. 2021. 10. 31.
쿠키와 세션(cookie, session) 쿠키와 세션 클라이언트가 서버에 요청을 할때, 서버는 요청을 보낸 사용자가 누구인지를 모른다. IP와 브라우저 정도는 알 수 있지만, PC방의 경우는 한 컴퓨터(하나의 IP)로 여러명의 사용자가 접속할 수 있기 때문에 IP로는 사용자가 누구인지 파악할 수 없다. 그렇기 때문에 로그인 기능이 필요하고, 로그인 기능을 구현하기 위해서 쿠키와 세션이 필요하다. 쿠키 브라우저에 데이터를 저장하는 수단이고, 서버에서 Set-Cookie에 저장하는 데이터를 쿠키라고 한다. 쿠키는 클라이언트에서 처음 요청하면 서버에서 받은 데이터를 쿠키에 넣고 다시 클라이언트로 보내준다. 브라우저는 쿠키를 저장하고 있다가 클라이언트가 요청을 할 때, 브라우저가 알아서 쿠키를 서버로 보내주기 때문에 쿠키의 정보를 보고 현재 사용자가 .. 2021. 10. 30.