브라우저에서 사용할 수 있는 비동기 흐름은 타이머 혹은 DOM 이벤트와 관련된 상황으로 다소 한정적이지만, node.js의 경우 많은 부분의 API가 비동기로 작성되어 있습니다. 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 모듈을 불러옵니다
필요한 모듈 설치
$ npm install <module>
node.js 내장 모듈을 사용하듯 require구문을 통해 모듈을 사용
const _ = require('<module>');
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); });
비동기 요청의 가장 대표적인 사례를 꼽으라고 한다면, 단연 네트워크 요청을 들수 있겠습니다. 다양한 네트워크 요청 중, URL로 요청하는 경우가 가장 흔합니다. 이를 가능하게 해주는 API가 바로 fetch API입니다.
let url = 'https://~.com/'; fetch(url) .then(response => response.json()) .then(json => console.log(json)) .catch(error => console.log(error));