본문으로 바로가기

[JavaScript] Binary 데이터 이미지로 변환하기

Binary 데이터이미지로 변환하는 작업을 알아보겠습니다.

동작 플로우는 아래와 같다고 가정하겠습니다.

 

1. post 요청

2. 응답 데이터 포맷 : binary

3. binary data를 jpg로 변환

 

위 동작을 하는 코드를 간단하게 작성하면 아래와 같습니다.

import axios from "axios";
import fs from "fs"; 

const token = "";
const bodyData = {};
const response = await axios.post("url", bodyData, {
  headers: {
  Authorization: `Bearer ${token}`,
  ContentType: "application/json"
  },
  responseType: "stream"
});

const stream = response.data.pipe(fs.createWriteStream("result.jpg"));
stream.on("finish", () => {
    console.log("Success downloaded");
});

간단하게 설명하자면 responseType을 stream으로 작성해줍니다.

응답이 오는 stream을 받아 fs 모듈을 이용하여 파일을 생성해주면 됩니다.

위 코드는 예외처리 등 부가 작업은 하나도 되어 있지 않으니 필요에 맞게 하시면 됩니다.

 

마지막

해당 내용은 틀릴 수도 있습니다. 틀린 내용이 있으면 조언 부탁드립니다.

반응형