5.Asynchronous & Promise - fs module, fetch API

xlsoh·2020년 9월 22일
0

TIL

목록 보기
14/23
post-thumbnail

node.js module

브라우저에서 사용할 수 있는 비동기 흐름은 타이머 혹은 DOM 이벤트와 관련된 상황으로 다소 한정적이지만, node.js의 경우 많은 부분의 API가 비동기로 작성되어 있습니다. node.js는 _"비동기 이벤트 기반 자바스크립트 런타임" 입니다.

node.js 내장 모듈 사용

Node.js v12.18.1 Documentation
DNS 모듈 사용법

브라우저에서 모듈 불러오기

<script src="불러오고싶은_스크립트.js"></script>

node.js 에서 자바스크립트 코드 가장 상단에 require 구문을 이용하는 것으로 시작

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

3rd-party 모듈 사용

필요한 모듈 설치

$ npm install <module>

node.js 내장 모듈을 사용하듯 require구문을 통해 모듈을 사용

const _ = require('<module>');

fs.readFile

fs.readFile은 로컬 파일을 읽어오는 메소드입니다. 현재 14.x 버전 기준 fs.readFile의 공식 API 문서

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

  • path <string> | <Buffer> | <URL> | <integer>
  • options <Object> | <string>
  • callback <Function>
fs.readFile('test.txt', 'utf8', (err, data) => {
  if (err) {
    throw err; // 에러를 던집니다.
  }
  console.log(data);
});

fs module

fetch API

비동기 요청의 가장 대표적인 사례를 꼽으라고 한다면, 단연 네트워크 요청을 들수 있겠습니다. 다양한 네트워크 요청 중, URL로 요청하는 경우가 가장 흔합니다. 이를 가능하게 해주는 API가 바로 fetch API입니다.

let url = 'https://~.com/';
fetch(url)
  .then(response => response.json())
  .then(json => console.log(json))
  .catch(error => console.log(error));
profile
주니어 프론트엔드 개발자

0개의 댓글