कंप्रेशन स्ट्रीम एपीआई की मदद से, ब्राउज़र में कंप्रेस करें और कंप्रेस करें

ऐसे छोटे वेब ऐप्लिकेशन लिखें जिनमें कंप्रेशन या डिकंप्रेशन लाइब्रेरी को शिप करने की ज़रूरत न हो

Compression Streams API का इस्तेमाल, gzip या deflate (या deflate-raw) फ़ॉर्मैट का इस्तेमाल करके डेटा की स्ट्रीम को कंप्रेस और डीकंप्रेस करने के लिए किया जाता है.

कंप्रेशन की सुविधा पहले से मौजूद होने की वजह से, JavaScript ऐप्लिकेशन को कंप्रेशन लाइब्रेरी शामिल करने की ज़रूरत नहीं होती. इससे ऐप्लिकेशन का डाउनलोड साइज़ कम हो जाता है. अब Chrome के स्टेबल वर्शन और Safari Technology Preview में, इस काम के एपीआई का इस्तेमाल किया जा सकता है. डेटा को कंप्रेस करने की प्रोसेस यहां दिखाई गई है.

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 पर काम करता है.