본문 바로가기

Programming/Node.js

4. Node 기능 살펴보기 (3) - 노드 내장 객체 : 기타

node js logo image

 

 

 

 

지금까지 아티클에서 언급되지 않은 내장 객체들에 대해서도 간단하게 살펴보겠습니다. 대표적인 예로, fetch를 들 수 있겠네요. fetch도 브라우저에서 사용하던 객체였는데 노드에서도 사용할 수 있게 동일하게 생성되었습니다. 기본적으로  fetch는 네트워크를 통해 리소스를 가져오는 기능을 담당하는 함수입니다.

 

이 함수는 주로 웹 서버에서 데이터를 가져와서 웹 페이지에 보여주는 데 사용되죠. fetch를 사용하면 웹사이트에서 다른 웹사이트의 데이터를 가져올 수 있는 것이죠. 이를 통해 API를 호출하거나 원격 서버에 요청을 보내는 등의 작업을 할 수 있습니다. 

아래의 예제는 https://www.example.com/image.jpg 이미지를 가져와서 화면에 표시하는 예제입니다. 먼저 fetch를 사용하여 이미지를 가져오고, 가져온 데이터를 Blob으로 변환한 다음, Blob URL로 변환하여 이미지를 표시합니다. 만약 에러가 발생하면 콘솔에 에러를 출력합니다.

 

// HTML에서 이미지를 보여줄 <img> 요소를 선택합니다.
const imgElement = document.querySelector('#myImage');

// fetch를 사용하여 이미지를 가져옵니다.
fetch('https://www.example.com/image.jpg')
  .then(response => {
    // 이미지를 가져왔을 때, 가져온 이미지 데이터를 Blob으로 변환합니다.
    return response.blob();
  })
  .then(blob => {
    // Blob을 URL로 변환합니다.
    const imgUrl = URL.createObjectURL(blob);

    // 이미지 URL을 <img> 요소에 설정하여 이미지를 표시합니다.
    imgElement.src = imgUrl;
  })
  .catch(error => {
    // 에러가 발생하면 콘솔에 로그를 출력합니다.
    console.error('이미지를 가져오는 중 에러 발생:', error);
  });

 

 

Node에서의 사용 예제는 아래를 참고하시면 됩니다.

 

fetch('https://api.example.com/data') // 데이터를 가져올 URL을 지정
  .then(response => response.json()) // 가져온 응답을 JSON 형식으로 변환
  .then(data => {
    // 변환된 데이터를 이용하여 원하는 작업 수행
    console.log(data); // 콘솔에 데이터를 출력해보기
  })
  .catch(error => {
    // 만약 에러가 발생하면 이 부분에서 처리
    console.error('데이터를 가져오는 중 에러 발생:', error);
  });

 

 

 

 


 

 

 

이밖에도 아래와 같은 내장 객체들이 존재합니다. 

 

· URL, URLSearchParams : 내장 모듈 파트에서 자세히 살펴볼 예정입니다.
· AbortController, FormData, fetch, Headers, Request, Response, Event, EventTarget
   : 브라우저에서 사용하던 API의 노드 적용
· TextDecoder : Buffer를 문자열로 변경
· TextEncoder : 문자열을 Buffer로 변경
· WebAssembly : 웹 어셈블리 처리를 담당