如何使用浏览器gunzip Ajax获取gziped文本文件?

Jér*_*nge 7 javascript ajax text-files gunzip

假设服务器无法压缩对用户请求的响应.然而,Web开发人员创建myfile.txt.gz并存储它http://www.mysite.com/myfile.txt.gz.

可以让浏览器自动将此压缩文本文件作为Ajax请求的一部分进行gunzip,并将结果存储在var?如果有,怎么样?

如有必要,我愿意接受其他压缩算法.

更新

我正在尝试使用以下JQuery Ajax调用:

var fetch = function() {

    $.ajax({
        type: 'GET',
        url:  "./data.txt.gz",
        headers: { "Accept-Encoding" : "gzip" },
        dataType: "text",
        async: true,
        success: function(result) {
            $("#midEnglob").text(result);
        },
        error: function(jqXHR, textStatus, errorThrown) {
            alert("Issue: "
                + textStatus + " "
                + errorThrown + " !");
        }

    });

}
Run Code Online (Sandbox Code Playgroud)

但我在浏览器中得到以下内容:

在此输入图像描述

有任何想法吗?

Chr*_*ian 4

让浏览器使用Content-Encoding: gzip解压缩它可能是最好的。如果它不适用于您的场景,JavaScript 中有许多 LZW 实现,例如: https: //gist.github.com/revolunet/843889

您可能必须尝试不同的实现,我自己没有检查其中任何一个。

  • 我不控制服务器端的内容编码...我如何从 Ajax 检索二进制内容? (3认同)