압축 스트림 API를 사용하여 브라우저에서 압축 및 압축 해제

자체 압축 또는 압축 해제 라이브러리를 제공할 필요가 없는 더 작은 웹 앱 작성

Compression Streams API는 gzip 또는 deflate (또는 deflate-raw) 형식을 사용하여 데이터 스트림을 압축 및 압축 해제하는 데 사용됩니다.

압축이 내장된 JavaScript 애플리케이션은 압축 라이브러리를 포함할 필요가 없으므로 애플리케이션의 다운로드 크기가 더 작아집니다. 이제 안정적인 Chrome 및 Safari Technology Preview에서 이 유용한 API를 지원합니다. 데이터 압축이 여기에 표시됩니다.

const readableStream = await fetch('lorem.txt').then(
  (response) => response.body
);
const compressedReadableStream = readableStream.pipeThrough(
  new CompressionStream('gzip')
);

압축을 해제하려면 압축 스트림을 압축 해제 스트림을 통해 파이핑하세요.

const decompressedReadableStream = compressedReadableStream.pipeThrough(
  new DecompressionStream('gzip')
);

데모

브라우저 지원

Compression Streams API는 Chromium 80 및 Safari Technology Preview 152부터 지원됩니다.