본문 바로가기

nodejs56

[Nodejs] 보안 - path.parse(), sanitize-html [생활코딩] App - 입력 정보에 대한 보안 [생활코딩] App - 출력 정보에 대한 보안 파일 탐색으로 인한 정보 유출 [예] - 개인정보를 저장하는 파일 password.js - 사용자가 http://abc.com/?id=../password.js 접속한다면 - fs.readFile('data/${queryData.id}', 'utf8', function(){}); 함수로 인해 - data/../password.js를 탐색하게됨 - ../는 상위 디렉토리를 가리키게 되고 - 상위 디렉토리인 data폴더와 같은 위치에 있는 password.js이 탐색되면서 개인정보가 유출됨 - 파일탐색 정보유출 막기 위한 경로 세탁 필요 경로 분석하기 path.parse(path) var path = require(.. 2020. 8. 5.
[Nodejs] Module [생활코딩] Node.js - 모듈의 형식 Module - 객체가 많아지면 정리정돈할 필요가 생김 - 정리된 객체을 파일로 만든 것이 모듈 모듈 내보내기 var M = { v: 'v', f: function(){ console.log(this.v); } } module.exports = M; // 모듈 내보내기 또는 module.exports = { v: 'v', f: function(){ console.log(this.v); } } 모듈 사용하기 var part = require('./mpart.js'); // 모듈 가져오기 console.log(part); // {v: 'v', f: [Function: f]} part.f(); // v 2020. 8. 4.
[Nodejs] 객체지향 프로그래밍 [생활코딩] JavaScript - 객체 - 데이터와 값을 담는 그릇으로서 객체 객체지향 프로그래밍(Object Oriented Programming) - 연관된 값들을 하나의 객체에 정리함으로써 코드의 복잡성을 낮춤 - 객체는 폴더의 역할을 함 var o = { v1 : 'v1', v2: 'v2', f1 : function(){console.log(this.v1);}, f2 : function(){console.log(this.v2);} // 함수가 객체 안에서 사용될 때 자신의 객체를 참조하도록 this를 사용 // this를 사용함으로써 객체의 이름이 바뀌어도 해당 객체를 참고할 수 있음 } o.f1(); // 객체 o안에 있는 f1라는 메소드 실행(객체안에 있는 함수를 메소드라고도 함) o.f2(); 2020. 8. 4.
[Nodejs] Function [생활코딩] JavaScript - 객체 - 값으로서 함수 function은 처리 방법을 담은 구문이면서 변수에 넣을 수 있는 값 var f = function(){ console.log(1+1); } var a = [f]; // 배열의 원소로써의 함수 a[0](); var o = { func: f } // 객체의 원소로써의 함수 o.func(); - 배열과 객체는 연관된 데이터를 담는 그릇 - Javascript에서는 처리방법을 그룹핑하는 함수 또한 데이터임 - 함수를 배열과 객체에 담을 수 있음 2020. 8. 4.
[Nodejs] Array/Object [생활코딩] JavaScript - 객체의 형식 [생활코딩] JavaScript - 객체의 반복 Array/Object: 정보를 정리정돈하는 도구 Array - 정보를 순서에 따라 저장 - 식별자는 숫자가 됨 var alphabet = ['AAA', 'BBB', 'CCC']; console.log(alphabet[0]); while(i < alphabet.length){ console.log(alphabet[i]); i = i+1; } Object - 순서가 없는 정보를 저장하기 좋음 - 식별자는 부여한 고유 이름 var alphabet = {'aaa' : 'AAA', 'bbb' : 'BBB', 'ccc' : 'CCC'}; console.log(alphabet.aaa); console.log(alphab.. 2020. 8. 4.
[Nodejs] 글 삭제하기 - unlink() [생활코딩] App - 글삭제 - 삭제버튼 구현 [생활코딩] App - 글삭제 기능 완성 삭제버튼 - 삭제는 태그 형태나 GET방식으로 만들면 안됨 - 누군가 해당 링크로 접속해 삭제할 수 있음 // onsubmit : 자바스크립트로 submit전 검사하는 함수(click()) 넣음 // submit시 삭제할 파일명을 id로 전달 fs.unlink(path, callback) - 글 삭제하기 if(pathname === '/delete_process'){ var body ''; request.on('data', function(data){ body = body+data; }); request.on('end', function(){ var post = qs.parse(body); var id = post... 2020. 8. 4.
반응형