일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- c3 초
- semanage
- 백준
- g++ 업데이트
- gcc 업데이트
- regex_search
- c3 축 없애기
- python popen
- python os
- 정규식 활용
- influxdb 설치
- subporcess path
- python subprocess
- linux시간으로 변경
- 1697
- 정규식 컴파일
- c3 축 가리기
- grafana dashboard
- CentOS7
- gcc regex
- selinux port 등록
- c3 step graph
- centos pyhon 설치
- c++ 정규식
- snmp test
- telegraf
- InfluxDB
- c3 second
- snmp
- 정규식 문자열 출력
- Today
- Total
목록NodeJS/생활코딩 (48)
리셋 되지 말자
현재 코드의 문제점 main.js의 일부 HTML CSS JavaScript 지금은 HTML, CSS, JavaScript 파일 3 가지 뿐이지만, 파일이 추가될 때마다 리스트 목록을 직접 수정해줘야 함. 이를 파일 목록을 가져와서 자동으로 리스트를 생성하는 방법으로 해결하도록 한다. 파일목록 읽어오기 readdir.js를 생성해서 실험 readdir.js var testFolder = './data/'; var fs = require('fs') fs.readdir(testFolder, function(error, filelist){ console.log(filelist); }) 결과 [Running] node "c:\VSCodeFiles\JS\nodeJS_OpenTutorial\OpenTutorial\..
메인 페이지(루트) HTML, CSS, JavaScript는 잘 동작하지만, WEB을 눌렀을 때(localhost/)는 아래와 같이 내용이 없다 path로 구분 이전까지는 pathname으로 HTML, CSS, JavaScrip를 구분하였는데, 루트 디렉토리는 pathname으로 구분할 수 없다.(뒤에 query string이 붙지 않기 때문) HTML로 접속 시 url 정보 Url { protocol: null, slashes: null, auth: null, host: null, port: null, hostname: null, hash: null, search: '?id=HTML', query: [Object: null prototype] { id: 'HTML' }, pathname: '/', pa..
응답 200 과 응답 404 response.writeHead(200); // 200을 전송하면, 파일을 잘 전송했다고 하는 약속 response.end(template); ip주소 오른쪽에 '/'이후로 파일 경로를 지정한다. 이때 파일이 존재하여 클라이언트에 잘 전송했다면 잘 전송했다는 의미로 200을 전송한다.(웹상의 약속이라고 한다.) 반대로 존재하지 않는 파일을 요청하면 404오류를 전송하여 클라이언트에게 알리도록 한다. 소스 코드 var http = require('http'); var fs = require('fs'); var url = require('url') // url 모듈을 사용한다 var app = http.createServer(function (request, response) ..
fileRead를 이용해서 동적으로 본문 병경 data 디렉토리를 새로 생성하고, 1.html 2.html 3.html의 본문 내용만 따로 data디렉토리 안에 HTML, CSS, JavaScript라는 이름으로 저장 전체 소스 코드 var http = require('http'); var fs = require('fs'); var url = require('url') // url 모듈을 사용한다 var app = http.createServer(function (request, response) { var _url = request.url; var queryData = url.parse(request.url, true).query; var title = queryData.id; console.log(q..
파일 읽기 nodejs 디렉토리 생성 후, 그 안에 fileread.js와 sample.txt 작성(sapmle.txt의 내용은 아무거나 작성) fileread.js var fs = require('fs'); fs.readFile('.\\nodejs\\sample.txt', (err, data) => { if (err) throw err; console.log(data.toString()); }); fs.readFile('.\\nodejs\\sample.txt', function(err, data){ if(err) throw err; console.log(data.toString()); }); 둘 다 같은 함수이지만, 첫 번째는 js의 최신 문법이고, 아래(두 번째)는 기본적인 문법이다. 실행 결과 [R..
템플릿을 이용한 웹페이지 생성 1.html의 내용을 카피하여 var template = ` `; 의 ` ` 안에 넣는다. 그리고 qeuryData에 따라 달라지는 부분을 ${queryData}로 변경하여 웹페이지를 요철할 때마다 query string의 id 값에 따라 내용이 변경되도록 한다. 전체 소스코드 var http = require('http'); var fs = require('fs'); var url = require('url') // url 모듈을 사용한다 var app = http.createServer(function(request,response){ var _url = request.url; var queryData = url.parse(request.url, true).query; ..
URL 형식 http://tistory.com:3030/main?id=HTML&page=12 통신규칙 : // host(ip주소) : 포트번호 / 파일 ? 쿼리 스트링(query string) URL 을 통해서 입력된 값 사용하기 main.js var http = require('http'); var fs = require('fs'); var app = http.createServer(function(request,response){ var url = request.url; console.log(url); // url 값 확인 if(url == '/'){ url = '\\index.html'; } if(url == '/favicon.ico'){ response.writeHead(404); response..
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); console.log(__dirname + url); response.end(fs.readFileSync(__dirname + url)); }); app.listen(80); 접속..