WEB/🌳 Node.js 14

[Node.js] 12. 세션(Session)

세션(Session)이란? 간단히 말하면 쿠키보다 더 안전하게 데이터를 저장하는 방식이다. 쿠키는 브라우저에 저장되는 반면 세션은 데이터를 웹 서버에 저장한다. 세션은 각 클라이언트에 부여한 고유 Session ID로 클라이언트를 구분해 해당 클라이언트에 맞는 서비스를 제공한다. express-session 설치와 실행 예시 npm install express-session npm을 이용하여 설치해주면 express에서 세션 기능을 간단하게 사용할 수 있게 된다. var express = require('express') var parseurl = require('parseurl') var session = require('express-session') var app = express() app.use..

WEB/🌳 Node.js 2022.08.08

[Node.js] 11. 쿠키의 생성과 사용

쿠키란? 간단히 요약하면, 웹 서버가 브라우저에게 지시하여 사용자 로컬 컴퓨터에 저장하는 4K 이하의 작은 데이터이다. 쿠키는 HTTP가 무상태 프로토콜(바로 이전 요청과 현재 요청이 연결되어 있음을 기억하지 않는 통신)이라는 약점을 보완하기 위해 도입하였으며, name=value 형태로 저장된다. 쿠키 생성 var http = require('http'); var cookie = require('cookie'); http.createServer(function(request,response){ // 쿠키 생성 response.writeHead(200, { 'Set-Cookie':['yummy_cookie=choco','tasty_cookie=strrawberry'] }); response.end('co..

WEB/🌳 Node.js 2022.08.07

[Express] 2. 미들웨어

미들웨어(Middleware)란? Express는 자체적인 최소한의 기능을 갖춘 라우팅 및 미들웨어 웹 프레임워크이며, Express 애플리케이션은 기본적으로 일련의 미들웨어 함수 호출입니다. 미들웨어 함수는 요청 오브젝트(req), 응답 오브젝트 (res), 그리고 애플리케이션의 요청-응답 주기 중 그 다음의 미들웨어 함수 대한 액세스 권한을 갖는 함수입니다. 그 다음의 미들웨어 함수는 일반적으로 next라는 이름의 변수로 표시됩니다. 미들웨어 함수는 다음과 같은 태스크를 수행할 수 있습니다. 모든 코드를 실행. 요청 및 응답 오브젝트에 대한 변경을 실행. 요청-응답 주기를 종료. 스택 내의 그 다음 미들웨어 함수를 호출. express 공식 홈페이지의 설명인데, 간단히 요약하면 요청(request)과..

WEB/🌳 Node.js 2022.08.06

[Express] 1. 설치방법과 라우팅

Express란? Express는 Node.js를 위한 빠르고 개방적인 간결한 웹 프레임워크 이다.(공식 홈페이지 설명) 그럼 프레임워크(framework)란 무엇인가? 프레임워크는 라이브러리를 포함하는 상위 개념으로, 무언가를 구현하기 위해 여러 라이브러리가 합쳐진 형태이다. 따라서, 웹 프레임워크는 '웹 서버'를 구현하기 위한 목적으로 만들어진 프레임워크다. 프레임워크와 라이브러리의 차이점은, 라이브러리는 사용자가 (도서관에서 책을 빌리듯이) 필요할때 불러서 사용한다. 하지만 프레임워크는 그 기능이 필요하면 사용자가 정해진 규칙(frame)에 맞춰서 일해야(work) 한다. 요약하자면, Express란 NodeJS를 사용하여 쉽게 웹 서버를 구성할 수 있게 만드는 프레임워크이다. Express 설치 ..

WEB/🌳 Node.js 2022.08.06

[Node.js] 10. MySQL 연동

생활코딩 Node.js - MySQL 강의를 듣고 공부한 내용을 정리한 게시글입니다. mysql 모듈 설치 npm install -S mysql -S는 --save로 바꿔 써도 된다. 이것은 package.json의 "dependencies" 부분에 설치된 모듈을 기록한다. 다만, npm 5버전 이후부터는 -S 없이 npm install만 적어도 "dependencies"에 추가가 된다. mysql 모듈 사용법 var mysql = require('mysql2'); // mysql 모듈을 불러온다. // createConnection 메소드의 인자로 전달되는 객체에 자신의 데이터베이스 정보(유저명과 패스워드 등)를 입력 var connection = mysql.createConnection({ host ..

WEB/🌳 Node.js 2022.08.05

[Node.js] 9. 패키지 매니저 npm

패키지 매니저(패키지 관리자, package manager) 패키지 매니저는 패키지의 설치, 업그레이드, 구성, 제거 과정을 자동화하는 소프트웨어 도구들의 모임이다. 여기서 패키지란, 라이브러리나 실행 파일을 포함하는 개념으로, 자바스크립트에서는 수많은 모듈로 구성되어있다. 모듈에 대해서는 아래 글을 참고하자. https://sirius7.tistory.com/43 [Node.js] 3. 모듈 만들기, 불러오기 (export, require) 모듈이란? Node.js으로 앱을 개발하기 위해서는 모듈 시스템을 사용한다. 이때, 모듈이란 ‘미리 만들어둔 함수들의 집합’이라고 할 수 있다. Node.js에서의 모듈은 2가지(코어 모듈, 파일 모듈) sirius7.tistory.com Node.js의 패키지 매..

WEB/🌳 Node.js 2022.08.02

[Node.js] 8. CRUD 게시판 구현

CRUD CRUD란 Create(생성), Read(읽기), Update(갱신), Delete(삭제) 의 약자로, 사용자 인터페이스가 갖추어야 할 기능을 말한다. Node.js로 CRUD 구현 아래 소스코드는 생활코딩 강의 WEB2 - Node.js (링크) 에서 사용한 것에서 디자인을 수정한 것이다. var http = require('http'); var fs = require('fs'); var url = require('url'); var qs = require('querystring'); var path = require('path'); var template = { HTML:function(title, list, body, control){ return ` Node.js 게시판 구현 글 목록 $..

WEB/🌳 Node.js 2022.08.02

[Node.js] 7. POST 방식으로 데이터 전송, 받기

POST GET과 POST는 네트워크의 전송 방식이다. GET은 어떠한 데이터를 전달해주는 방식이라면, POST는 데이터의 값을 변경하는 방식이다. POST방식으로 데이터 보내기 [HTML] 먼저 입력값을 받아서 데이터를 보내기 위한 HTML 폼을 만들어보자 form에서 데이터를 보내는 방식으로 post를 사용하기 위해 method="post"를 작성한다. POST방식으로 전송된 데이터 받기 [Node.js] var http = require('http'); var url = require('url'); var app = http.createServer(function (request, response) { var _url = request.url; var pathname = url.parse(_url,..

WEB/🌳 Node.js 2022.08.01

[Node.js] 6. fs 모듈 (파일 읽기, 쓰기, 편집, 제거)

fs모듈 fs는 FileSystem의 약자로, fs 모듈은 Node.js에서 파일 입출력 처리를 할 때 사용한다. fs 모듈을 불러오기 위해 다음 코드를 작성한다. // 1. CommonJS Modules const fs = require("fs"); // 2. ES Modules import fs from "fs"; 지난번에 Node.js를 공부하면서 (링크) 모듈을 불러오는 방법으로 require 함수를 배워서 글을 작성했는데, ES6(ES2015) 부터는 import / export 라는 방식으로 모듈을 불러올 수 있다. import/export는 require 와는 다르게 모듈의 특정 부분만 불러올 수 있다는 장점이 있다. 다만, ES모듈을 사용하는 경우에만 import / export를 사용할 ..

WEB/🌳 Node.js 2022.07.29

[Node.js] 5. 서버 실행하기

Node.js에서 서버 실행하기 const http = require('http'); const port = 3000; const hostname = '127.0.0.1'; const server = http.createServer(function (request, response) { response.writeHead(200); response.end('Hello, Node.js!\n'); }) server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); }); app.js 파일에 위 소스코드를 입력하고 터미널에서 'node app.js'를 입력해서 실행시킨 뒤, http://local..

WEB/🌳 Node.js 2022.07.28