반응형 node13 [Node.js] json 파일을 직접 불러와서 사용해 보자. 1. 개요 Node.js에서 json 파일을 직접 불러와서 사용해 보는 예제이다. 2. 사용법 JSON은 JavaScript Object Notation의 약자로 데이터를 전송하는 데 사용한다. JSON은 key와 value로 구성되어 있다. 아래는 무지개의 영어를 키로 하고 한글을 값으로 하는 JSON 파일이다. 파일 이름 : hello-rainbow.json { "red" : "빨강", "orange" : "주황", "yellow" : "노랑", "green" : "초록", "blue" : "파랑", "indigo" : "남색", "violet" : "보라" } 이번 예제에서는 별도의 모듈이 필요하지 않는다. 아래와 같이 json 파일을 직접 읽어 json.red 를 출력하면 "빨강"이 표시된.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] http 모듈 - 요청 URL에 따른 다양한 서비스 1. 개요 Node.js에서 http 모듈로 웹으로 요청 URL에 따른 다양한 서비스를 분기하는 예제이다. 2. 사용법 먼저 http 모듈과 fs 모듈을 선언한다. var http = require('http'); var fs = require('fs'); 요청URL 에 대한 각각의 request.url에 대해서 if ~ else ~ 문으로 분기를 하여 처리한다. if (request.url == "/") { response.writeHead(200, { 'Content-Type' : 'text/html; charset=utf-8' }); …(중략)… } else if (request.url == "/about") { response.writeHead(200, { 'Content-Type' : .. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] http 모듈로 웹으로 GET/POST를 서비스해보자. 1. 개요 Node.js에서 http 모듈로 웹으로 GET/POST를 서비스해 보는 예제이다. 2. 사용법 http 모듈과 fs 모듈을 선언한다. var http = require('http'); var fs = require('fs'); 요청에 대한 onRequest() 함수를 생성한다. 콜백함수의 파라미터로 request와 response를 받는다. function onRequest(request, response) { …(중략)… } http 객체에 createServer() 함수로 Server를 생성하면서 콜백함수로 onRequest를 지정해 준다. http.createServer(onRequest).listen(1337, function() { console.log('http://127... ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] http 모듈로 text와 html을 브라우저에 표시해보자. 1. 개요 Node.js에서 http 모듈로 text와 html을 브라우저에서 표시하는 예제이다. 2. 사용법 먼저 http 모듈과 fs 모듈을 선언한다. var http = require('http'); var fs = require('fs'); 아래와 같이 http 객체에 createServer() 함수로 Server를 생성한다. 콜백함수의 파라미터로 request와 response를 받는다. http.createServer(function(request, response) { …(중략)… }).listen(1337, '127.0.0.1'); 요청 URL과 method, 그리고 헤더정보를 표시하기 위해 아래와 같이 코드를 작성한다. headers += "Request URL = " + req.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] socket.io 모듈을 사용하여 소켓통신을 구현해 보자. 1. 개요 Node.js에서 socket.io 모듈을 사용하여 2개 이상의 브라우저가 서로 소켓통신하는 예제이다. 2. 서버 코드 socket.io 모듈을 선언하고 listen() 함수로 80 포트로 io 객체를 생성한다. 80포트는 http 기본포트이여서 url에 포트번호를 생략할 수 있다. var io = require('socket.io').listen(80); io.sockets.on('connection', function(socket) { 그리고 server 객체에 두 개의 이벤트를 생성한다. 이벤트 이름은 구분하기 쉽게 msg_from_server1과 msg_from_server2로 정의했다. msg_from_server1 은 카운터를 1증가시키고 메시지를 전송하고 msg_from_ser.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] net 모듈을 사용하여 네트워킹을 해보자. 1. 개요 Node.js에서 net 모듈을 사용하여 Server와 Client 간의 간단한 통신을 해보는 예제이다. 2. 서버 코드 net 모듈을 선언하고 net.createServer()로 server 객체를 생성하고 요청에 대한 서비스를 만든다. var net = require('net'); var server = net.createServer(function(socket) { 서버에 연결이 되면 메세지와 1증가한 카운트값을 전송한다. socket.write('[from Server] message.\r\n'); socket.write("[from Server] count = " + count); socket.pipe(socket); 연결이 종료되면 아래의 로그를 출력한다. socket.on('e.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] fs 모듈을 사용하여 파일을 읽고 쓰기 1. 개요 Node.js에서 fs 모듈을 사용하여 파일을 읽고 쓴다. 그리고 파일과 경로의 존재여부를 확인해 본다. 2. 사용법 writeFile() 함수로 지정한 파일에 원하는 내용을 기록한다. /** fs : FileSystem */ var fs = require('fs'); var filename = "hello-file.txt"; fs.writeFile(filename, 'This is text file. Hello, Node.js', 'utf8', function(err) { if (err) { throw err; } console.log(filename + ' writeFile OK'); }); 결과화면 > node ex_fs_write.js hello-file.txt writeFile.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] process에 이벤트를 생성하고 호출해 보자. 1. 개요 이번에는 process 객체에 이벤트를 생성하고 강제로 호출해 보는 예제를 진행해 본다. 2. 설명 Node.js는 이벤트를 비동기 방식으로 처리한다. 이벤트를 처리하는 EventEmitter가 만들어져 있다. 노드 객체는 EventEmitter를 상속받을 수 있고 상속받은 후에는 EventEmitter 객체의 on()과 emit() 메서드를 사용할 수 있다. process 객체는 이벤트를 핸들링하는 EventEmitter의 인스턴스이다. EventEmitter를 상속받아서 process 객체에 이벤트를 생성하고 호출할 수가 있다. 이벤트를 생성할 때 on()과 once() 함수를 사용하여 만든다. on()으로 생성한 이벤트는 제거하기 전까지 계속 사용 가능한데 반해 once()로 생성.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] querystring 모듈을 사용하여 쿼리스트링 파싱 1. 개요 Node.js에서 querystring 모듈을 사용하여 URL 주소를 파싱하여 정보를 표시하는 예제이다. 2. 사용법 먼저 querystring 모듈을 선언한다. var querystring = require('querystring'); querystring 모듈의 stringify() 함수를 사용하여 JSON을 쿼리스트링으로 변환할 수 있다. querystring 모듈의 stringify() 함수를 사용하여 JSON을 쿼리스트링으로 변환할 때 2번째, 3번째의 파라미터에 값을 주면 쿼리스트링의 '&' 구분자 대신 2번째 파라미터를 사용하고, '=' 구분자 대신 3번째 파라미터를 사용한다. var q1 = querystring.stringify({..JSON...}); var q2 = qu.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] url (Uniform Resource Locator)모듈로 URL을 파싱 1. 개요 Node.js에서 url 모듈을 사용하여 url 주소를 파싱하여 객체로 만들어 정보를 표시하는 예제이다. 2. 사용법 url 문자열은 여러 구성 요소를 포함하는 구조화된 문자열이다. url 모듈을 선언하고 parse() 함수로 주소를 파싱한다. var url = require('url'); var urlObj = url.parse("http://domain:8080/admin/page?name=admin&pwd=1234#top", true, true); 파싱된 객체를 사용하여 아래와 같이 각각의 정보를 표시한다. 전체 주소를 표시 console.log("urlObj.href = " + urlObj.href); 프로토콜을 표시 console.log("urlObj.protocol = ".. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] os 모듈을 사용하여 운영체제와 시스템 정보를 조회 1. 개요 os 모듈을 사용하여 운영체제의 메모리, 플랫폼, 운영시간과 같은 정보를 표시할 수 있다. os 모듈은 내장된 모듈이며 운영체제와 관련된 메서드와 속성을 제공한다. 2. 사용법 먼저 os 모듈을 선언합니다. var os = require('os'); os 모듈에 정의된 메서드를 사용하면 해당 정보를 쉽게 표시할 수 있다. os.hostname() - 호스트 이름 os.type() - 운영체제 형태 os.uptime() - 운영시간 os.totalmem() - 전체 메모리 크기 3. 예제 운영체제와 시스템 정보를 표시하는 예제이다. 소스코드와 실행 결과를 보면 쉽 게 알 수 있다. /** os : Operation System */ var os = require('os'); consol.. ■ Front-End ■/Node.js 2023. 2. 26. [Node.js] crypto 모듈 - 해시코드 생성, 문자열 암호화 및 복호화 1. 개요 crypto 모듈은 해시코드 생성, 암호화와 복호화와 관련된 모듈이다. crypto 모듈을 사용하여 문자열을 해시코드를 만들 수 있고 입력값을 암호화하고 복호화를 할 수 있다. 2. 설치 먼저 다음의 명령어로 crypto 모듈을 설치한다. > npm install crypto --save 3. 사용법 먼저 crypto 모듈을 선언한다. 입력 값은 'crypto module'로 하였다. var crypto = require('crypto'); var input = 'crypto module'; 1) Hash crypto.createHash() 메서드를 호출하여 Hash 클래스의 인스턴스로 sha1을 정의한다. 그리고 sha1에 update() 메서드로 input 데이터를 해싱하고 dige.. ■ Front-End ■/Node.js 2023. 2. 26. 이전 1 2 다음 728x90