-
제로부터 시작하는 Node.js - 10. Express 모듈 - 2 (미들웨어 1)내가 보기 위해 쓰는 것/Node.js 2019. 11. 7. 16:28
이 글은 주요한 미들웨어를 주로 다루겠습니다. 1. 개요 지난 글에서 Express 모듈의 기본적인 내용에 대해서 알아보았지만, 이 내용만으로는 http모듈과 Express 모듈의 차이를 크게 느끼긴 힘들었습니다. 와닿는 정도는 Express 모듈은 use 메서드를 사용한다는 것입니다. use메서드가 http모듈의 request이벤트리스너와 무엇이 다를까요? 일단 use메서드는 여러번 사용할 수 있으며, request, response 이외에 세번째 매개변수로 next를 사용할 수 있습니다. next는 해당 use메서드의 다음에 위치한 함수를 뜻합니다. 예제로 살펴보겠습니다. const express = require('express') const app = express() app.use( functi..
-
제로부터 시작하는 Node.js - 9. Express 모듈 - 1내가 보기 위해 쓰는 것/Node.js 2019. 11. 6. 16:21
Node.js 웹 서버를 개발할 때 가장 많이 사용되는 Express 모듈에 대해서 알아보겠습니다. http모듈처럼 내용이 꽤 방대함으로 나누어서 진행할 생각입니다. 이 글에서는 미들웨어 개념까진 가지 않고 http모듈과의 차이, 추가 기능 등을 중심으로 기술하였습니다. 1. 기본 서버 우선 Express 모듈을 사용해 서버를 작성해봅시다. index.js 입니다. const express = require('express') const app = express() app.use(function (req, res) { res.writeHead(200, { 'Content-Type': 'text/html' }) res.end('Hi') }).listen(3001, function (err) { consol..
-
제로부터 시작하는 Node.js - 8. 패키지 매니저 npm, 외부모듈내가 보기 위해 쓰는 것/Node.js 2019. 11. 6. 13:19
이번에는 node.js가 제공하는 패키지매니저 사용법과 알아두면 좋은 몇가지 외부모듈에 대해서 알아보겠습니다. 아래 개념은 알고 가셨으면 좋겠습니다. 개념 설명 npm init node.js 프로젝트 initialize npm install 패키지에 모듈 설치 package.json node.js 프로젝트의 환경 설정 정보 파일 1. 프로젝트 초기화 node.js는 런타임 플랫폼 뿐만 아니라 npm이라는 강력한 패키지 매니저도 제공합니다. 이번에는 이 npm이라는 패키지매니저를 중점으로 진행하겠습니다. 먼저 프로젝트를 정의하는 것부터 시작하겠습니다. 적당한 폴더를 준비하시고 터미널에서 그 폴더에 이동후 이렇게 입력해주세요. npm init 우선 연습용이기도하고, 기본 값을 보기 위해 그냥 엔터를 눌러 진..
-
제로부터 시작하는 Node.js - 7. http 모듈 2편 (Cookie, Request, Page)내가 보기 위해 쓰는 것/Node.js 2019. 11. 5. 15:10
1. 쿠키 1-1. 쿠키의 정의 쿠키란 '일정 기간' 저장되는 데이터입니다. 활용도는 다양합니다, 로그인 상태 유지 등... 쿠키에는 키와 값이 들어있으며 이름, 값, 파기날짜, 경로 정보등이 기록되어있습니다. 쿠키는 서버와 클라이언트 모두 저장하고 사용할 수 있습니다. 1-2. 쿠키 생성 response 객체를 사용하여 쿠키를 할당할 수 있습니다. 이때는 응답헤더를 Set-Cookie속성으로 사용합니다. Set-Cookie 속성에는 아래처럼 문자열 형태로 이루어진 쿠키의 배열을 입력해야합니다. Name = Value; Expires = 날짜; Domain = 도메인; Path = 경로; Secure 우선 간단한 예제입니다. const http = require('http') http.createServ..
-
제로부터 시작하는 Node.js - 6. http 모듈 1편 (Http, Server, Request, Response)내가 보기 위해 쓰는 것/Node.js 2019. 11. 4. 17:55
이 챕터는 node.js로 웹서버개발을 목표로 하는 사람들에겐 가장 중요한 챕터입니다. 확실히 해야하고 내용도 기존 글들에 비해 방대하기 때문에 두편으로 나누려고 합니다. HTTP(HyperText Transfer Protocol)은 TCP/IP를 기반에 둔 프로토콜입니다. 이 글의 목적이 프로토콜은 아니기 때문에 자세한 설명은 하지 않겠습니다. 다만 이 글에서 필연적으로 어느정도 이론적인 내용이 나올 수 밖에 없음을 알아주세요. http모듈은 Node.js에서 가장 기본적이고 중요한 웹 모듈입니다. 웹서버와 클라이언트 생성등 관련된 모든 기능을 담당합니다. node.js로 웹서버를 개발하는 것이 목표라면 잘 이해하고 넘어갑시다. * 꼭 알아가야할 개념 개념 설명 요청 웹 서버에 보내는 모든 요청을 말합..
-
제로부터 시작하는 Node.js - 5. 이벤트 관리내가 보기 위해 쓰는 것/Node.js 2019. 11. 4. 15:44
안녕하세요 오늘은 Node.js에서 이벤트 관리법을 간략하게 정리하겠습니다. 진행속도가 느린거같아서 이 글부터 예제를 최대한 줄이고 간략하게 하겠습니다. * Node.js는 '이벤트 기반 비동기 입출력'을 앞세운 플랫폼입니다. 그럼으로 '이벤트'가 뭔지 이해하는 것이 중요합니다. 이 글에선 이벤트 등록, 제거등을 초점을 두면 되겠습니다. 1. 이벤트 등록 Node.js의 이벤트 등록법입니다. on(eventName, eventHandler) eventName 자리에는 이벤트의 종류, eventHandler엔 이벤트를 핸들링할 함수가 들어가겠죠. 간단한 예제로 살펴보겠습니다. console.log('프로그램을 시작했습니다.') process.on('exit', function(code){ console.l..
-
제로부터 시작하는 Node.js - 4. 기본 내장 모듈내가 보기 위해 쓰는 것/Node.js 2019. 11. 1. 13:37
저번 글에서 모듈을 만들고 사용하는 법을 알아봤는데요. 이번에는 Node.js가 제공하는 내장된 모듈들에 대해서 알아보겠습니다. 우선 내장 모듈은 굉장히 많아서 전부 외우는건 불가능합니다. 그러니까 모듈의 정보를 찾는법, 활용법을 알 수있는 방법들에 더 중점을 두고 알아봅시다. 이 글에서는 모듈 사용법, util모듈, file system모듈을 다룰 것입니다. node.js가 제공하는 기본 모듈은 버전에 따라서 정리된 공식 문서가 있습니다. 저의 경우 12.~ LTS 버전을 사용하고 있으니 https://nodejs.org/dist/latest-v12.x/docs/api/ Index | Node.js v12.13.0 Documentation nodejs.org 이곳을 참고하면 되겠네요. 알게됬으니 모듈 ..
-
제로부터 시작하는 Node.js - 3. Node.js의 전역객체내가 보기 위해 쓰는 것/Node.js 2019. 10. 31. 13:27
Node.js가 제공하는 전역 객체를 알아보고 Node.js의 핵심모듈을 알아봅시다. 시작하기 전 알아두어야 할 개념입니다. 아래 개념을 모르면 Node.js글을 이해하기 힘듭니다. 개념 설명 전역 변수/객체 프로그램 전체에서 사용할 수 있는 변수와 객체를 의미합니다. process 객체 프로그램과 관련된 정보를 나타내는 객체이며, 웹 브라우저에서 작동하는 자바스크립트에서는 존재하지 않는, Node.js만이 가진 객체입니다. 모듈 모듈은 기능을 쉽게 사용하고자 메서드와 속성을 미리 정의해 모아 놓은 것입니다. exports 객체 모듈을 생성할 때 사용합니다. 1. 전역 변수 웹 브라우저에서 동작하는 자바스크립트의 최상위 객체는 Window 객체입니다. 하지만 Node.js는 브라우저에서 동작하는 것이 아..