เขียนเว็บแอปขนาดเล็กที่ไม่จำเป็นต้องจัดส่งไลบรารีการบีบอัดหรือคลายการบีบอัดของตัวเอง
Compression Streams API ใช้สำหรับการบีบอัดและคลายการบีบอัดสตรีมข้อมูลโดยใช้รูปแบบ gzip หรือ deflate (หรือ deflate-raw)
แอปพลิเคชัน JavaScript ที่มีการบีบอัดในตัวไม่จำเป็นต้องมีไลบรารีการบีบอัด ซึ่งทำให้ขนาดการดาวน์โหลดของแอปพลิเคชันเล็กลง ตอนนี้ Chrome เวอร์ชันเสถียรและ Safari Technology Preview รองรับ 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')
);
สาธิต
การสนับสนุนเบราว์เซอร์
Compression Streams API รองรับตั้งแต่ Chromium 80 และ Safari Technology Preview 152