Сжатие и распаковка в браузере с помощью Compression Streams API
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Создавайте небольшие веб-приложения, которым не нужно предоставлять собственную библиотеку сжатия или распаковки.
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')
);
Демо
Поддержка браузеров
API потоков сжатия поддерживается начиная с Chromium 80 и Safari Technology Preview 152.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons "С указанием авторства 4.0", а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2022-08-29 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2022-08-29 UTC."],[],[]]