Сожмите строку в javascript, используя pako.js
Мне удалось распаковать строку в JavaScript с помощью pako.js
// Get some base64 encoded binary data from the server. Imagine we got this:
var b64Data = 'H4sIAAAAAAAAAwXB2w0AEBAEwFbWl2Y0IW4jQmziPNo3k6TuGK0Tj/ESVRs6yzkuHRnGIqPB92qzhg8yp62UMAAAAA==';
// Decode base64 (convert ascii to binary)
var strData = atob(b64Data);
// Convert binary string to character-number array
var charData = strData.split('').map(function(x){return x.charCodeAt(0);});
// Turn number array into byte-array
var binData = new Uint8Array(charData);
// Pako magic
var data = pako.inflate(binData);
// Convert gunzipped byteArray back to ascii string:
var strData = String.fromCharCode.apply(null, new Uint16Array(data));
// Output to console
console.log(strData);
Я хочу, чтобы метод сжимал строку, и вывод может быть распакован приведенным выше кодом с использованием pako и gzip.
Как я могу это сделать?
2 ответа
Мы можем просто сделать let test = pako.gzip(str, {to: 'string'});. Отменить процесс так же просто, как pako.ungzip(test, { to: 'string' });
Есть повторяющийся вопрос, поэтому я делюсь своим ответом здесь.
/questions/23332029/gzip-stroka-v-javascript-s-ispolzovaniem-pakojs/65893704#65893704