הפעלת דחיסת נתונים וביטול דחיסה בדפדפן באמצעות 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.