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

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

कंप्रेशन स्ट्रीम एपीआई, gzip या डिफ़लेट (या डिफ़लेट-रॉ) फ़ॉर्मैट का इस्तेमाल करके डेटा की स्ट्रीम को कंप्रेस और डीकंप्रेस करने के लिए बनाया गया है.

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