less than 1 minute read

21. Node.js - App 제작 - sanitize-html

  1. 보안
    사용자가 입력한 정보를 외부로 출력할 때 오염된 정보가 있다면 그것을 소독하는 것.

  2. npm을 통해서 내가 아닌 다른 사람이 만든 모듈을 이용해서 어플리케이션을 빠르게 만든다.

  3. HTML에서 script 같은 태그, 를 비활성화 시키는 작업을 하도록 한다.

소독, 살균이란 의미의 npm sanitize html 구글링

npm sanitize-html

  • script, a 태그 등 태그를 변환시켜 악성 스크립트로 변질되는 것을 막아주는 보안 라이브러리이다.

  • npm에 등록된 수많은 모듈들이 서비스되고 있는 포털같은 곳
    https://www.npmjs.com/package/sanitize-html

  • sanitize-html 모듈을 Node.js로 만든 어플리케이션에서 부품으로 사용한다

npm 사용하기

애플리케이션을 npm으로 관리하기 위한 절차

npm init

package name 은 그냥 enter를 치면 기본적으로 디렉토리의 이름이 패키지 name이 된다.
자신의 어플리케이션을 패키지로서 관리한다.

계속해서 enter 입력, package.json 파일 안에 프로젝트 정보가 생성된다.

사용하고 싶은 패키지 설치

npm install -S sanitize-html

-S : 진행에 해당하는 프로젝트에서만 사용할 부품으로서 설치하게 된다.
-g : 전역으로 적용

node_modules 라는 디렉토리가 생성되고 그 안에
sanitize-html 디렉토리와 파일들을 확인 할 수 있다.

package.json 파일에 dependencies(의존성) 를 보면 sanitize-html을 확인 할 수 있다.

  • 소프트웨어에서 의존성이란 어플리케이션이 sanitize-html을 쓰고 있다면 그것에 의존하고 있다는 뜻이다.
  • 만들고 있는 프로젝트가 어떤 외부 소프트웨어들의 의존하고 있는지를 보여준다.

node_modules에 이 밖에도 설치된 다른 디렉토리들은
sanitize-html이 의존하고 있는 다른 소프트웨어들이다.

이런 복잡한 의존관계를 npm이 관리하고 있는 것이다.