הפעלת דחיסת נתונים וביטול דחיסה בדפדפן באמצעות Compression Streams API

כתיבת אפליקציות אינטרנט קטנות יותר שלא צריכות לשלוח ספרייה משלהן לדחיסה או לפריסה

Compression Streams API מיועד לדחיסה ולפריסה של זרמי נתונים בפורמטים gzip או deflate (או deflate-raw).

אפליקציות JavaScript עם דחיסה מובנית לא צריכות לכלול ספריית דחיסה, ולכן גודל ההורדה של האפליקציה קטן יותר. גרסה יציבה של Chrome וגרסת טכנולוגיה מקדימה של Safari תומכות עכשיו בממשק ה-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')
);

הדגמה (דמו)

תמיכה בדפדפנים

ה-API של Compression Streams נתמך מ-Chromium 80 ומ-Safari Technology Preview 152.