본문 바로가기

개발일기/Node.js 공부하기

(16)
App - 글생성 UI 만들기 & POST 방식으로 전송된 데이터 받기 & 파일생성과 리다이렉션 // main.js var qs = require('querystring'); var app = http.createServer(function(request,response){ ...... .... .. if(pathname === '/create'){ title = 'WEB - create'; var readFolder = './data'; fs.readdir(readFolder, (error, filelist) => { var list = templateList(filelist); var template = templateHTML(title, list, ` `); response.writeHead(200); response.end(template); }); }else if(pathname === '..
Node.js - 패키지 매니저와 PM2 패키지 매니저. 소프트웨어를 만들 때, 타인의 모듈을 이용해서 소프트웨어를 만들게 되는데, 사용하는 모듈이 많아지면 여러가지 복잡한 문제가 생긴다. 이를 관리하는 도구가 패키지 매니저. 생성, 설치, 삭제, 업데이트 등을 관리. (= 모듈을 관리하는 도구??) 대표적인 패키지 매니저는 NPM이 있고, Node.js를 설치하면 자동으로 같이 설치된다. PM2. (프로세스 매니저) 실행중인 Node.js 애플리케이션을 관리하는 프로세스 매니저. 프로세스를 감시하고 있다가 꺼지면 다시 켜줌. 파일이 수정되면 자동으로 프로그램을 재부팅해줌. PM2 설치 및 사용 1.설치 명령어>> npm install pm2 -g -g는 독립적으로 사용하겠다는 옵션 만약 permission denied 라는 에러메세지가 나면 ..
Node.js - 파일 목록 알아내기 & App - 글목록 출력하기 // readdir.js var readFolder = './data'; // ./는 현재 디렉토리에서 라는 뜻. var fs = require('fs'); // fs = file system fs.readdir(readFolder, (error, filelist) => { console.log(filelist); //filelist는 배열타입으로 반환됨. }); 콘솔창 실행 node nodejs/readdir.js 결과 [ 'CSS', 'HTML', 'JavaScript' ] 출처 opentutorials.org/course/3332/21122 // main.js var http = require('http'); var fs = require('fs'); var url = require('url'); ..
Node.js - pathname & App - Not found 오류 구현(response 코드 설정) // main.js var url = require('url'); var app = http.createServer(function(request,response){ var _url = request.url; var pathname = url.parse(_url, true).pathname; console.log(pathname); }); app.listen(3000); 위의 이미지에서는 url.parse(_url, true).pathname 은 /main 이다. (port 뒤에 있는 /부터 ?전까지) // main.js var http = require('http'); var fs = require('fs'); var url = require('url'); var app = http.createServ..
Node.js - 콘솔에서의 입력값 // conditional.js var args = process.argv;//[node.js runtime 위치, 현재실행한 파일 위치, 파라미터1, 파라미터2, ...] console.log(args.slice(2));// 배열의 2번지부터 끝까지 자름. 콘솔창에 node.js를 실행하면서 같이 파라미터를 쓴다. node syntax/conditional.js param1 param2 param3 param4 결과 [param1, param2, param3, param4] 출처 opentutorials.org/course/3332/21062
Node.js - 파일 읽기 & App - 동적인 웹페이지 만들기 // readfile.js var fs = require('fs'); fs.readFile('sample.txt', 'utf8', function(err, data){ console.log(data); }); readfile.js와 sample.txt 가 있는 디렉토리에서 node.js 실행해야함. 출처 opentutorials.org/course/3332/21048 // main.js var http = require('http'); var fs = require('fs'); var url = require('url'); var app = http.createServer(function(request,response){ var _url = request.url; var queryData = url.pa..
Node.js - URL로 입력된 값 사용하기 프로토콜 : 통신방식 포트 : http로 접속하는 것은 web서버로 접속하는 것. 기본포트는 80. var url = require('url');//url은 node.js의 모듈 var app = http.createServer(function(request,response){ var _url = request.url; var queryData = url.parse(_url, true).query; var title = queryData.id; . . . }); queryData는 객체 형태. { id : HTML } * url.parse() 는 deprecate되었다고함. -> _url.searchParams.get('id'); 대신 사용 가능 출처 opentutorials.org/course/3332..
Node.js 시작 // main.js var http = require('http'); var fs = require('fs'); var app = http.createServer(function(request,response){ var url = request.url; if(request.url == '/'){ url = '/index.html'; } if(request.url == '/favicon.ico'){ response.writeHead(404); response.end(); return; } response.writeHead(200); response.end(fs.readFileSync(__dirname + url)); }); app.listen(3000); 1. 콘솔창에서 프로젝트가 있는 폴더로 디렉토리 이..