Node.js

App - 홈페이지 구현

수업소개

조건문을 활용해서 홈페이지를 표현하는 방법을 살펴봅니다. 

 

 

 

강의

 

 

 

소스코드

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 pathname = url.parse(_url, true).pathname;
    if(pathname === '/'){
      if(queryData.id === undefined){
        fs.readFile(`data/${queryData.id}`, 'utf8', function(err, description){
          var title = 'Welcome';
          var description = 'Hello, Node.js';
          var template = `
          <!doctype html>
          <html>
          <head>
            <title>WEB1 - ${title}</title>
            <meta charset="utf-8">
          </head>
          <body>
            <h1><a href="/">WEB</a></h1>
            <ul>
              <li><a href="/?id=HTML">HTML</a></li>
              <li><a href="/?id=CSS">CSS</a></li>
              <li><a href="/?id=JavaScript">JavaScript</a></li>
            </ul>
            <h2>${title}</h2>
            <p>${description}</p>
          </body>
          </html>
          `;
          response.writeHead(200);
          response.end(template);
        });
      } else {
        fs.readFile(`data/${queryData.id}`, 'utf8', function(err, description){
          var title = queryData.id;
          var template = `
          <!doctype html>
          <html>
          <head>
            <title>WEB1 - ${title}</title>
            <meta charset="utf-8">
          </head>
          <body>
            <h1><a href="/">WEB</a></h1>
            <ul>
              <li><a href="/?id=HTML">HTML</a></li>
              <li><a href="/?id=CSS">CSS</a></li>
              <li><a href="/?id=JavaScript">JavaScript</a></li>
            </ul>
            <h2>${title}</h2>
            <p>${description}</p>
          </body>
          </html>
          `;
          response.writeHead(200);
          response.end(template);
        });
      }
    } else {
      response.writeHead(404);
      response.end('Not found');
    }
});
app.listen(3000);

 

댓글

댓글 본문
  1. Jeong Il Haan
    20210415
  2. kujern
    걍 skip해야할 듯.
  3. byoonn
    완료
  4. !queryData.id로 해도 되네요
  5. thebluerat
    휴휴
  6. chimhyangmoo
    21.02.18
  7. jeisyoon
    2021.02.07 App - 홈 페이지 구현 완료
    점점 어려워 지내요 ~~~
  8. 마아앙
    2021.01.31
  9. hanel_
    21.2.1 2월달과 함께 시작 ~
  10. 임찬혁
    완료
  11. 뭄수
    완료
  12. ohhigo
    21/1/22
  13. wnstjd9701
    2021-01-18
  14. 2021.01.04 완료!
  15. 손민철
    20/12/29 완료
  16. 생활둘기
    2020 12 25
  17. kkn1125
    20.12.21 완료~!
  18. 이윤재
    20201123완료
  19. 2020.11.03.TUE.
  20. ㅇㄹ
  21. 콜라
    20201014 완료
  22. Yong Hyun Lee
    완료 201001
  23. 윤병록
    20.09.24
  24. CH Yim
    2020.09.13
  25. 2020.09.09
  26. OQ the YOUNG
    2020.09.08
  27. CodingChan
    2020. 09. 06
  28. 코딩조아
    20.08.05
  29. 뚜따띠또따
    20/07/31 완료!
  30. 누누
    2020.07.31 완료
  31. 코딩하는렌즈쟁이
    2020-07-25 (토)
    완료!
  32. Jenny Song
    24th.JULY.2020 완료
  33. 리다
    20200713
  34. 불스택
    20.07.10 완료
    감사합니다 !
  35. 영호팍
    오늘도! 출석!
  36. Amousk
    좋은강의 감사합니다.
  37. 2020.06.15
  38. 사아
    완료!
  39. Katherine Roh
    완료 :)
  40. 김보미
    완료
  41. 김진수
    완료
  42. 김재익
    완료
  43. 바다의왕자
    완료
  44. Eunsung Shin
    완료
  45. 03.09 완료
  46. eddylee123456
    복습
  47. eddylee123456
    완료
  48. 스티븐잡숴
    완료
  49. 임은정
    완룡
  50. 파이어뱃
    2019_12_05 complete
버전 관리
egoing
현재 버전
선택 버전
graphittie 자세히 보기