Riucc's Storage
RSS
태그
관리
쓰기
카테고리
  • IT (593)
    • 정리 (0)
    • C# (42)
    • ASP.NET MVC (16)
    • JQuery&Javascript (12)
    • CSS (11)
    • 데이터베이스 (32)
    • Windows Server (6)
    • Active Directory (3)
    • Exchange (9)
    • JAVA (2)
    • JSP (39)
    • JSP 게시판 만들기 (21)
    • JSP 개발 참고 (15)
    • JSP 안드로이드 (4)
    • Servlet (17)
    • Spring (42)
    • HTML (14)
    • NodeJS (46)
    • MongoDB (11)
    • 리눅스 (18)
    • 자료구조 (16)
    • 아이폰 (24)
    • 안드로이드 (68)
    • API 활용하기 (10)
    • 소켓네트워크 (28)
    • 라즈베리파이 (11)
    • AWS클라우드 (10)
    • 빅데이터Hadoop (22)
    • 커널모듈프로그래밍 (8)
    • 기타 (10)
    • 자격증 (26)
Riucc's Storage

[NodeJS] - 웹사이트 2차 fs.readdir로 자동화시키기

NodeJS|2018. 9. 16. 15:24
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

○ 웹사이트 2차 fs.readdir로 자동화시키기

 

이전 시간에 파일목록을 가져오는 fs.readdir을 알아보았다

이번엔 그것을 이용하여 웹사이트에서 반복문으로 

파일 목록을 불러와 파일 내용을 뿌려주는 것을 알아보겠다

(나중에 추가하거나 수정할 때, 로직 변경없이 파일만 추가하면 되는!!! 와 대박!!!)


    if (pathname === '/') {

        if (queryData.id === undefined) { // 주소에 queryData.id 를 찾지 못했을 때

                                                    // 즉, http://localhost:3000/ 아무 데이터를 안줬을 때

            // 파일목록을 불러온다(filelist에)

            fs.readdir('./data', function (error, filelist) {

                console.log(filelist);


                var title = '존재하지 않은 페이지';

                var description = '존재하지 않은 페이지입니다';

                

                // 반복문을 통해 파일목록( ${filelist} )을 ul 과 li 태그에 뿌려준다

                // 파일목록은 배열형이기에 배열로 접근한다 ${filelist[0]} 배열이기에 0번부터!!!

                var list = '<ul>';

                var i = 0;

                while(i<filelist.length){

                      list = list + `<li><a href="/?id=${filelist[i]}">${filelist[i]}</a></li>`;

                      i = i + 1;

                }

                list = list + '</ul>';

                

                // 템플릿 리터럴 표시(` ` 사이에 글 막쓰기, 변수는 ${변수명} 접근, 매우 편리)

                var template = `

        <!doctype html>

        <html>

        <head>

          <title>WEB1 - ${title}</title>

          <meta charset="utf-8">

        </head>

        <body>

          <h1><a href="/">WEB</a></h1>${list}

        

          <h2>${title}</h2>

          <p>${description}</p>

        </body>

        </html>

        `;

                response.writeHead(200); // 서버연결 성공 시 정상 작동 200

                response.end(template);  // 응답해서 뿌려줘라

            })

        } 


     


참조 : https://opentutorials.org/course/3332/21123 (생활코딩)


저작자표시 (새창열림)

'NodeJS' 카테고리의 다른 글

[NodeJS] - 웹사이트 3차 함수를 이용하여 중복 제거 및 가독성 높이기  (0) 2018.09.19
[Javascript] - 함수의 생성 및 입력과 출력 return  (0) 2018.09.19
[NodeJS] - 디렉토리에 파일 목록들 읽어오기 fs.readdir  (0) 2018.09.16
[Javascript] - 배열과 반복문  (0) 2018.09.16
[NodeJS] - 웹사이트 1차 queryData로 관리하기  (0) 2018.09.12

댓글()
카테고리
  • IT (593)
    • 정리 (0)
    • C# (42)
    • ASP.NET MVC (16)
    • JQuery&Javascript (12)
    • CSS (11)
    • 데이터베이스 (32)
    • Windows Server (6)
    • Active Directory (3)
    • Exchange (9)
    • JAVA (2)
    • JSP (39)
    • JSP 게시판 만들기 (21)
    • JSP 개발 참고 (15)
    • JSP 안드로이드 (4)
    • Servlet (17)
    • Spring (42)
    • HTML (14)
    • NodeJS (46)
    • MongoDB (11)
    • 리눅스 (18)
    • 자료구조 (16)
    • 아이폰 (24)
    • 안드로이드 (68)
    • API 활용하기 (10)
    • 소켓네트워크 (28)
    • 라즈베리파이 (11)
    • AWS클라우드 (10)
    • 빅데이터Hadoop (22)
    • 커널모듈프로그래밍 (8)
    • 기타 (10)
    • 자격증 (26)
최근 등록 현황
최근 글
최근 월별 글
최근 댓글
최근 글
최근 월별 글
최근 댓글
최근 글
최근 월별 글
최근 댓글
달력
지난달
2025.6
다음달
일월화수목금토
1234567
891011121314
15161718192021
22232425262728
2930
태그 구름
  • nodejs express
  • 정보처리산업기사 필기 정리
  • 자료구조
  • 안드로이드 카카오 로그인 연동
  • 정보처리산업기사 16년
  • 이클립스 mysql 연동
  • 정규화
  • 정보처리산업기사 16년 필기
  • 카카오 로그인 연동
  • 정보처리산업기사 15년 필기
  • 안드로이드 카카오 로그인
  • 이클립스 디비 연동
  • HTML
  • 안드로이드
  • 정보처리산업기사 총정리
  • 정보처리산업기사 필기
  • 소켓 프로그래밍
  • 정보처리산업기사 요약
  • nodejs MySQL 연동하기(Connection Pool)
  • 데이터베이스
  • 안드로이드 intent
  • 카카오 로그인
  • 소켓
  • 정규형
  • 정보처리산업기사 15년
  • jsp
  • 리눅스
  • 정보처리산업기사 정리
  • 정보처리기사 실기 정리
  • 커널 모듈 프로그래밍
카운터
전체 방문자
오늘
어제
Skin by M1REACT. Designed by M1STORY.TISTORY.COM. Valid XHTML 1.0 and CSS 3. Copyright ⓒ Riucc's Storage. All rights reserved.

티스토리툴바