본문 바로가기
Node.js

Node.js

by Mia_ 2022. 11. 23.

Node.js 내장 모듈을 사용하는 방법 

 

Node.js 모듈에서는 JavaScript 코드 가장 상단에 require 구문을 이용하여 다른 파일을 불러옴

const fs = require('fs'); // 파일 시스템 모듈을 불러옵니다
const dns = require('dns'); // DNS 모듈을 불러옵니다

// 이제 fs.readFile 메서드 등을 사용할 수 있습니다!

 

3rd-party 모듈을 사용하는 방법

 

모듈 : 어떤 기능을 조립할 수 있는 형태로 만든 부분

3rd-party 모듈 : 해당 프로그램잉 언어에서 공식적으로 제공하는 빌트인 모듈이 아닌 모든 외부 모듈 

 

예를 들어 Node.js에서 underscore라는 서드 파티 모듈을 이용하려면 

- 터미널에서 npm install underscore 을 입력해 설치 

- 그럼 node_modules에 undersocre가 설치 

- Node.js 내장 모듈을 사용하듯 require 구문을 통해 undersocre를 사용할 수 있음


fs.readFile (path[, options], callback)

: 메서드 fs.readFile은 비동기적으로 파일 내용 전체를 읽음. 이 메서드는 실행 시 전달인자 세 개를 받음

1. path

2. options

3. callback

 

1. path \ <string> | \ <Buffer> | \ <URL> | \ <interger>

- 파일 이름을 전달 인자로 받음

- 네 가지 종류의 타입을 넘길 수 있지만 일반적으로 문자열의 타입을 받음

// '/etc/passwd' 파일을 불러오는 예제
fs.readFile('/etc/passwd', ..., ...)

 

2. options  \ <Object> | \ <string>

- 대괄호로 감싼 두 번째 전달 인자 options은 넣을 수도 있고 넣지 않을 수도 있음 (대괄호는 선택적 전달인자를 의미)

- 문자열로 전달 할 경우 인코딩을 받음

// 1.options에 문자열을 전달한 경우
// /etc/passwd 파일을 'utf8'을 사용하여 읽음

fs.readFile('/etc/passwd', 'utf8', ...);
// 2. options에 객체를 전달한 경우
let options = {
  encoding: 'utf8', // utf8 인코딩 방식으로 연다
  flag: 'r' // 읽기 위해 엽니다
}

// /etc/passwd 파일을 options를 사용하여 읽음 
fs.readFile('/etc/passwd', options, ...)

 

3.  callback \ <Function>

 3.1. err  \ <Error> | \  <AggregateError>

 3.2. data  \ <string> | \ <Buffer>

- 콜백 함수를 전달. 파일을 읽고 난 후 비동기적으로 실행되는 함수

- 두 가지 매개 변수가 존재

- 에러가 발생하지 않으면 err은 null이 되며, data에 문자열이나 Buffer라는 객체가 전달 됨. (data는 파일의 내용)

 

: https://nodejs.org/dist/latest-v16.x/docs/api/fs.html#fs_fs_readfile_path_options_callback

 

'Node.js' 카테고리의 다른 글

Axios  (0) 2022.11.24
타이머 관련 API  (0) 2022.11.22