본문 바로가기

개발공부/Node.js9

Express에서 세션을 사용하는 방법 세션(Session)과 쿠키(Cookie)쿠키(Cookie)세션(Session)쿠키 & 세션 작동 방식Express에서 세션 사용 예제쿠키 vs 세션 비교기본 개념웹 서버와 브라우저(클라이언트)는 기본적으로 stateless(무상태성) 을 가진다.→ 즉, 한 번의 요청zing829.tistory.com 왜 세션(session)을 사용할까?웹 애플리케이션에서 로그인 기능은 필수 요소다. 로그인 후 사용자가 지속적으로 로그인 상태를 유지할 수 있도록 하기 위해서는 세션과 쿠키는 중요한 역할을 한다.  세션과 쿠키의 차이세션과 쿠키는 모두 상태를 저장하는 방법이지만, 저장 위치와 동작 방식에서 차이가 있다.🗄️세션서버 측에 데이터를 저장한다.클라이언트는 세션 ID만을 저장하고, 실제 데이터는 서버에 보관된다.. 2025. 2. 19.
라우트? 라우터? 우트와 라우터는 비슷하지만 다르다. 강의를 듣다보니 트와 터 진짜 열불나게 헷갈린다.라우트(Route): 특정 HTTP 메서드와 경로(URL Path)를 기반으로 요청을 처리하는 규칙 . 라우터(Router) : 요청과 경로를 처리하기 위한 객체.   express.Router()로 생성  라우트(Route)라우터(Router)역할HTTP 요청-응답 규칙 정의여러 라우트를 그룹화스코프단일 경로와 동작 처리기능별로 라우트 관리라우트 (route) ?URL Path : URL의 Host(도메인)다음에 오는 부분ex) /skin : https://www.tistory.com/skin 특정 HTTP 메서드(GET, POST 등)와 경로(URL Path)를 기반으로 요청을 처리하는 규칙을 작성하는 것Express.. 2025. 1. 24.
HTTP method TTP 메서드는 클라이언트가 서버에 요청을 보낼 때, 어떤 종류의 작업을 수행할지 정의하는 동작을 의미한다. 각 메서드는 특정 작업을 나타내며, 서버가 어떻게 반응할지에 대한 지침을 제공한다.​- GET : 자원을 검색할 때 사용- POST : 자원을 생성할 때 사용- PUT : 자원을 업데이트 할 때 사용 ( 보내지 않은 정보는 NULL값으로 업데이트 된다)- PATCH : 자원을 업데이트 할 때 사용 ( 보내지 않은 데이터는 기존 데이터를 유지)- DELETE : 자원을 삭제할 때 사용1. GET*리소스란 ? 웹 서버에서 제공하거나 접근할 수 있는 모든 종류의 데이터를 포함 *목적: 서버에서 데이터 조회(검색)하는 데 사용 / 서버의 상태를 변경하지 않고, 리소스를 읽기만 한다.(읽기전용)예시 : 웹.. 2025. 1. 23.
package.json이 왜 중요할까? package.json ? Node.js 프로젝트 및 JavaScript 생태계에서 프로젝트를 관리하는 핵심 설정 파일 Node.js와 package.json의 관계 Node.js는 npm또는 Yarn을 통해 패키지를 설치하고 관리하는데 , package.json은 설치한 패키지의 정보를 기록하여 프로젝트의 종속성을 명시한다.Node.js는 package.json의 scripts 항목을 활용하여 명령어를 실행package.json은 Node.js 프로젝트에서 매우 중요한 역할을 한다. (삭제 금지 !!)의존성 관리: 프로젝트에서 필요한 외부 라이브러리와 패키지들이 명시된다. 스크립트 정의: 자주 사용하는 명령어들을 scripts 항목에 정의할 수 있다.프로젝트 메타데이터: 프로젝트 이름, 버전, 설명,.. 2025. 1. 22.
왓 더 PUG node.js 공부하다가 마주한 귀여운 아이콘의 퍼그. .포켓몬 같은 이 자식을 잡아서 내꺼로 만들겠다. PUG 사용법 1. pug를 설치한다.npm install pug 2. Pug를 View Engine으로 설정 : app.set 메서드를 사용하여 Pug를 Express의 view engine으로 설정한다.app.set("view engine", "pug"); 3. Views 디렉토리 경로 설정 : Pug 파일들이 저장될 디렉토리 경로를 지정한다app.set("views", process.cwd() + "/src/views"); 4. Pug 파일 렌더링 : res.render() 메서드를 사용하여 Pug 파일을 렌더링 res.render("파일이름", { 변수명: 값 }); pugpug는 간결하고 효.. 2025. 1. 11.
module (import,export) Module (모듈)특정 기능을 수행하는 코드 조각을 의미하며, 이를 파일 단위로 나누는 것을 뜻한다.모듈을 생성하여 import와 export를 이용해 다른 파일 간에 데이터를 주고받을 수 있다.여기서 주의할 점은 import와 export는 코드의 최상단에 위치해야 한다는 것, 이는 호이스팅(hoisting) 때문이다.호이스팅자바스크립트에서 코드가 실행되기 전에 변수 선언과 함수 선언이 자동으로 끌어올려지는 현상import와 export는 자바스크립트의 전역 스코프에서 처리되며, 다른 코드가 실행되기 전에 먼저 처리되어야 한다.이렇게 해야 import된 모듈을 다른 코드에서 바로 사용할 수 있다. -> import문이 파일의 최상단에 있어야 해당 모듈이 제대로 불러와지고, 이후 코드에서 사용할 수 있.. 2025. 1. 9.
[Node.js] middleware - morgan ▶ middleware가 궁금하다면 클릭Morgan은 HTTP 요청 로깅 미들웨어로, 다양한 로깅 형식을 제공하여 요청 정보를 다양한 방식으로 기록할 수 있다.주요 로깅 형식들은 로그의 출력 내용을 다르게 구성하며, 개발 환경에 따라 적합한 형식을 선택할 수 있다. 로깅이란? 프로그램이 실행되는 동안 발생하는 이벤트, 상태, 에러, 정보 등을 기록하는 것 Morgan 설치하기 (https://www.npmjs.com/package/morgan)npm i morgan 사용법const morgan = require('morgan'); // Morgan 모듈 불러오기app.use()를 사용하여 애플리케이션의 모든 요청에 대해 로깅을 활성화const express = require('express');const.. 2025. 1. 3.
[node.js] middleware Middleware는 Node.js에서 요청과 응답(Response) 사이에 위치하여, 요청을 가로채거나 처리하는중간 단계 함수우리는 왜 Middleware를 사용할까?반복 줄이기: 모든 요청에서 공통적으로 해야 할 작업을 한 곳에 작성.코드 분리: 요청 처리 로직을 컨트롤러와 분리하여 가독성 및 유지보수성 향상.유연성: 필요에 따라 여러 미들웨어를 체인처럼 연결해 다양한 작업을 처리.주의할 점미들웨어의 순서!!! ( 완전중요 별 다섯개 )app.use로 등록된 미들웨어는 작성된 순서대로 실행된다.요청 처리 흐름에 영향을 줄 수 있으니 순서를 신중히 배치해야한다.next()를 호출하지 않으면 요청이 멈춤미들웨어에서 next( )를 호출하지 않으면, 다음 단계로 넘어가지 않고 요청 처리가 멈춘다 next .. 2025. 1. 3.
Node. js Node.js 설치 ( https://nodejs.org/ko )공식사이트에 LTS(장기 지원 버전)을 설치한다.npm은 Node.js의 공식 패키지 관리자로, Node.js를 설치하면 npm도 자동 설치된다.Node.js란 무엇인가?자바스크립트의 해석은 브라우저에서 하는데 각 브라우저마다 자바스크립트를 해석할 수 있는 엔진들이 있다.하지만 해석 엔진이 브라우저에 있기 때문에 브라우저 내에서만 실행할 수 있다.​자바스크립트를 브라우저 밖에서도 사용하고 싶어서 탄생한 것이 바로 Node.Js다. Node.js는 JavaScript 런타임 환경으로, 브라우저 외부에서도 JavaScript를 실행할 수 있도록 만들어졌다. 런타임 환경이란?- 프로그램이 동작하기 위해 필요한구성 요소와 실행 환경을 묶어 제공하는.. 2025. 1. 1.