본문 바로가기

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

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.parse(_url, true).query;
    var title = queryData.id;

    if(_url == '/'){
      title = 'Welcome';
    }
    if(_url == '/favicon.ico'){
      response.writeHead(404);
      response.end();
      return;
    }
    response.writeHead(200);
    
    /* 타이틀에 따라 파일읽어오는 부분 */
    fs.readFile(`data/${title}`, 'utf8', (error, description) => {
      var templete = `
      <!doctype html>
      <html>
      <head>
        <title>WEB1 - ${title}</title>
        <meta charset="utf-8">
      </head>
      <body>
        <h1><a href="/">WEB</a></h1>
        <ol>
          <li><a href="/?id=HTML">HTML</a></li>
          <li><a href="/?id=CSS">CSS</a></li>
          <li><a href="/?id=JavaScript">JavaScript</a></li>
        </ol>
        <h2>${title}</h2>
        <p>${description}</p>
      </body>
      </html>
      `;
      response.end(templete);
    });

 
});
app.listen(3000);

 

* 새로고침할때마다 파일을 다시 읽어오기 때문에,

서버를 재부팅하지 않아도 파일의 수정된 내용이 바로 반영된다.

 

 

 

출처

opentutorials.org/course/3332/21047

opentutorials.org/course/3332/21049