본문 바로가기

Node.js24

Node.js 보안 Security Best Practices Security Best Practices 소프트웨어를 안전하게 보호하기위하여 필히 신경써야할 보안에 관하여 살펴보자 Express홈페이지 Security Best Practices에 관한 글을 보면, 다음과같은 보안지침들이 나열되어있다. 이중 주요사항들을 몇가지 살펴보자 Don’t use deprecated or vulnerable versions of Express Express의 최신버젼을 항상 유지할 것 Use TLS https를 사용할 것. 중간에 누가 데이터를 가로채가도 데이터의 실제 내용을 알 수 없도록. Use Helmet 보안과 관련해서 일어날 수 있는 여러가지 보안이슈들을 자동으로 해결해주는 모듈인데 이를 사용할 것 설치방법 사용방법 Use cookies securely 웹사이트를 누가.. 2021. 5. 27.
Node.js express.Router Router 사이트가 커짐에 따라서 소스들을 잘 정돈하지않으면 소프트웨어가 커지는데 한계가 온다. express의 Router 메소드를 이용하여 라우터들을 별도의 파일로 빼서 모듈로 만들어주어 코드를 단순화하는 방법에 대해 알아보자 모듈파일 만드는 방법 라우터소스들을 따로 뺀 파일에 먼저 다음과 같이 express 로딩을 다시 해주고 express.Router메소드 호출하여 router라는 객체에 담아준다 router.use / router.get / router.post 를 사용하여 라우터들을 정열해준 뒤, 이 파일을 모듈로서 동작하는 파일로 만들어주기위해 파일 맨 아래쪽에 파일바깥쪽으로 router를 export 시킨다는 뜻으로 다음코드를 적어야 한다. 만들어진 모듈파일 사용방법 birds에 미들웨어.. 2021. 5. 27.
Node.js Express 에러처리하기 에러처리 홈페이지를 구현하다보면 응답해야할 페이지가 없는경우 에러가 발생하게되는데 이런 경우 에러를 처리하는 방법에 대해 살펴보자 404 not find error 일단 우리가 가장 흔히 볼 수 있는 에러는 존재하지않는 페이지를 찾았을때 발생하는 에러이다. 이럴 경우 미들웨어 제일 끝에 다음과같은 미들웨어를 추가해주면 된다. app.use(function (request, response, next) { response.status(404).send('Sorry cant find that!'); }); 미들웨어가 순차적으로 진행되다가 최종적으로 페이지를 못찾았을때 실행되도록 하기 위함이다. error handling middleware 아래 예시를 살펴보자 fs.readFile을 했을때 디렉토리에 없는 .. 2021. 5. 23.
Node.js Express 정적인 파일 서비스 정적인 파일을 서비스하는 방법을 Express버젼으로 살펴보자 정적인 파일이라함은 대표적으로 이미지파일, 자바스크립트, CSS 파일을 웹브라우저쪽으로 다운로드받아주는 경우 등등이 되겠다 이미지파일을 예로 들어보자 사용하고자하는 디렉토리를 만들어준뒤 그 안에 이미지 파일을 넣어준다. 이때 static이라는 express에 기본적으로 내장되어있는 함수를 사용하면되는데 express.static(root, [options]) 다음과 같이 정적인 파일을 사용하고자하는 디렉토리를 경로로 지정해주고 등록을 한 후 , app.use(express.static('public')); 이미지를 넣고자하는 본문에 app.get('/', function (request, response) { var title = 'Welco.. 2021. 5. 22.
Node.js 미들웨어 미들웨어 (Middleware) 미들웨어는 Client와 Server를 연결하여 데이터를 주고받을 수 있도록 중간에서 매개 역할을 하는 소프트웨어이다. 미들웨어 종류 Application-level Router-level Error-handling Built-in Third-party 😁Application-level const express = require('express'); const app = express(); 프레임워크 express를 require해서 실행된 express를 app이라는 변수에 담아서 사용한다. app.use(function (request, response, next) { console.log('Middleware'); }) app에 use, method (get, pos.. 2021. 5. 21.
Node.js 미들웨어 compression 사용법 middleware 우리는 소프트웨어를 만들때, 다른사람이 미리 만들어놓은 소프트웨어 부품을 사용함으로서 나의 소프트웨어를 완성한다. 누군가에 의해 만들어진 미들웨어를 Third-party middleware 라고 부르며 그 가운데에서도 대표적으로 많이 사용되는 conpression에 대해 알아보도록 하자. compression 사용자가 서버로 보내는 데이터의 양이 많을때, 압축된 데이터를 전송하고 응답하게함으로서 오고가는 데이터의 양을 획기적으로 줄여주어 여러가지 부담을 덜어주는 기능이다. 설치방법 npm install compression 모듈 require 시키기 const compression = require('compression'); 미들웨어 등록 app.use(compression()); .. 2021. 5. 20.