รองรับสตรีมการบีบอัดในทุกเบราว์เซอร์แล้ว

การรองรับเบราว์เซอร์

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

แหล่งที่มา

Compression Streams API มีไว้สำหรับบีบอัดและขยายสตรีมข้อมูลโดยใช้รูปแบบ gzip หรือ deflate (หรือ deflate-raw)

เมื่อใช้การบีบอัดในตัวของ Compression Streams API แอปพลิเคชัน JavaScript ไม่จำเป็นต้องมีไลบรารีการบีบอัด ทำให้ขนาดการดาวน์โหลดของแอปพลิเคชันเล็กลง ตอนนี้เบราว์เซอร์ทุกรุ่นรองรับ API ที่มีประโยชน์นี้แล้ว

บีบอัดข้อมูล

ข้อมูลโค้ดต่อไปนี้แสดงวิธีบีบอัดข้อมูล

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

decompress ข้อมูล

หากต้องการคลายการบีบอัด ให้ส่งผ่านสตรีมแบบบีบอัดผ่านสตรีมการคลายการบีบอัด

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

สาธิต