JavaScript对字符串进行Gzip压缩和解压

xiaohai 2019-12-16 15:28:12 8164人围观 标签: Gzip  js  gzip 
简介前一篇博客中已经说过Golang对Gzip的处理,其实这是我的服务器端的处理,那么当我们服务器返回Gzip压缩的字符串后,客户端如何进行解压呢?本文主要记录下JavaScript对Gzip进行压缩和解压处理。

  服务器接口在对内容进行Gzip压缩后,那么Web端如何将消息进行解压处理呢?其实Js已经有一个很好用的库了pako.js,地址如下:https://github.com/nodeca/pako

这里我们用一个简单的Demo进行使用即可:

<!DOCTYPE html> <html lang="zh"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script> <script src="https://cdn.bootcss.com/pako/1.0.6/pako.min.js"></script> </head> <body> <input id="content" type="text"> <button onclick="encode()">encode</button> <button onclick="decode()">decode</button> <div id="ciphertext"></div> </body> </html> <script type="text/javascript"> function encode(){ var str = $('#content').val();//中文??嘻嘻哈哈,hello str = window.btoa(pako.gzip(str, {to: "string"})) $('#ciphertext').text(str); } function decode(){ var encodedData = $('#content').val(); var decodedData = window.atob(encodedData); var data = pako.ungzip(decodedData, {to: "string"}); $('#ciphertext').text(data); } </script>