تتوفر الآن مجموعات بث الضغط على كل المتصفحات

Browser Support

  • Chrome: 80.
  • Edge: 80.
  • Firefox: 113.
  • Safari: 16.4.

Source

تُستخدَم واجهة برمجة التطبيقات Compression Streams API لضغط وفك ضغط تدفقات البيانات باستخدام تنسيقات gzip أو deflate (أو deflate-raw).

باستخدام ميزة الضغط المضمّنة في Compression Streams API، لا تحتاج تطبيقات JavaScript إلى تضمين مكتبة ضغط، ما يؤدي إلى تقليل حجم تنزيل التطبيق. تتوفّر واجهة برمجة التطبيقات المفيدة هذه الآن على جميع المتصفحات.

ضغط البيانات

يوضّح المقتطف التالي كيفية ضغط البيانات:

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

فك ضغط البيانات

لإلغاء الضغط، يمكنك توجيه بث مضغوط من خلال بث إلغاء الضغط.

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

عرض توضيحي