백엔드/Node.js(9)
-
파일 업로드
1. 파일 업로드Node.js에서 파일 업로드를 처리하기 위해서는 주로 Express 프레임워크와 Multer 미들웨어를 함께 사용합니다. Multer는 multipart/form-data 형식으로 전송된 파일 데이터를 읽어 서버의 지정된 디렉토리에 저장할 수 있게 도와주는 미들웨어로, 단일 파일은 upload.single(), 다중 파일은 upload.array() 또는 upload.fields()로 처리할 수 있습니다. 클라이언트는 Postman 또는 웹 브라우저의 폼을 통해 파일을 전송하며, 업로드된 파일 정보는 req.file 또는 req.files에 담겨 서버에서 활용할 수 있습니다.import express from 'express';import multer from 'multer';impor..
2025.05.11 -
JSON Web Token
1. JSON Web Token(JWT)JSON Web Token(JWT)은 서버와 클라이언트 사이에서 인증 정보를 안전하게 전달하기 위한 컴팩트하고 독립적인 토큰입니다. JWT는 세 부분(헤더, 페이로드, 서명)으로 구성되어 있으며, 페이로드에는 사용자 정보나 인증 관련 데이터가 담기고, 서명은 토큰의 무결성을 검증하는 데 사용됩니다. 주로 로그인 이후 발급되어 클라이언트가 저장하고 있다가 서버 요청 시 함께 전송하며, 서버는 토큰만 검증하고 별도로 세션을 저장하지 않아 상태를 유지하지 않는(stateless) 인증 방식을 구현할 수 있습니다. 이로 인해 모바일 앱, SPA(싱글 페이지 어플리케이션), 마이크로서비스 API 서버에서 널리 사용됩니다.npm install jsonwebtoken JWT는 ..
2025.04.26 -
라우트
1. 라우트라우트(Route)는 웹 애플리케이션에서 클라이언트가 요청한 URL 경로와 HTTP 메서드(GET, POST 등)에 따라 서버가 어떤 동작을 수행할지를 정의하는 규칙입니다. 즉, 사용자가 /login, /about 같은 특정 경로로 요청을 보냈을 때, 그 요청을 처리할 코드를 지정해주는 역할을 합니다. Express에서는 app.get(), app.post() 같은 메서드를 통해 라우트를 설정하며, 각 라우트에는 요청 정보를 처리하고 응답을 보내는 핸들러 함수가 연결됩니다. 라우팅은 웹 서버가 어떤 페이지나 데이터를 제공할지를 결정하는 핵심적인 구조입니다. 1. route 메서드Express의 .route() 메서드는 동일한 URL 경로에 대해 여러 HTTP 메서드(GET, POST, PUT ..
2025.04.23 -
Express
1. ExpressExpress는 Node.js 환경에서 가장 널리 사용되는 웹 애플리케이션 프레임워크로, 서버를 쉽고 빠르게 구축할 수 있도록 다양한 기능을 제공합니다. 기본적인 HTTP 모듈보다 훨씬 간단하게 라우팅 처리, 요청/응답 객체 관리, 미들웨어 설정, 정적 파일 제공, 템플릿 엔진 연결 등을 할 수 있어 개발 생산성을 크게 높여줍니다. 특히 RESTful API 구축에 최적화되어 있으며, 수많은 미들웨어와 플러그인 생태계를 통해 다양한 웹 서비스에 손쉽게 확장할 수 있는 것이 장점입니다. 1. 설치npm install express 2. 앱 생성const express = require('express');const app = express();const port = 3000;// 기본 라..
2025.04.22 -
EJS
1. EJSEJS(Embedded JavaScript)는 HTML 안에 , 문법을 이용해 JavaScript 코드를 삽입할 수 있도록 도와주는 템플릿 엔진입니다. 서버에서 데이터를 넘겨주면, 그 데이터를 HTML에 자동으로 넣어서 브라우저에 보낼 수 있게 해줍니다. 1. 설치npm install ejs 2. 📁 프로젝트 구조ejs-test/├── views/│ └── index.ejs├── server.js├── package.json view/index.ejs 안녕하세요, 님! server.jsconst http = require("http");const fs = require("fs");const ejs = require("ejs");const path = require("path");con..
2025.04.22 -
http 모듈
1. http 모듈Node.js의 http 모듈은 웹 서버를 만들 수 있게 해주는 핵심 내장 모듈로, 클라이언트(브라우저 등)의 요청(request)을 받고, 응답(response)을 반환하는 기능을 제공합니다. 이 모듈을 통해 별도의 웹 서버 소프트웨어(Apache, Nginx 등) 없이도 Node.js 자체로 웹 서버를 만들 수 있으며, http.createServer() 메서드를 사용해 요청 처리 함수를 정의하고, 서버를 특정 포트에서 실행할 수 있습니다. 주로 REST API를 만들거나 HTML 파일을 전송하는 등의 기본적인 웹 애플리케이션 서버 개발에 많이 사용됩니다.const http = require("http");const server = http.createServer((req, res)..
2025.04.22