我试图压缩我的请求,但它似乎只会增加请求的大小:
const requestData = LZString.compress(
JSON.stringify({ data: bigBase64StringHere })
);
await axios.post("api-endpoint", requestData, {
headers: { "Content-Type": "text/plain" },
});当我console.log原始字符串和压缩字符串时,压缩字符串更大(原来的400 K对压缩的500 K)。当我记录它们的计算大小时-压缩的是原来的一半(原来的800 K比压缩的330 K)。
使用console.log**:**的日志记录
未压缩尺寸:

压缩尺寸:

使用大面积的日志记录

(顶部未压缩,底部压缩)
这给了我压缩声称要达到的结果:
Pieroxy.net/blog/page/lz-string/demo.html
可能是压缩实际上是有效的,但是内容长度头对于请求大小来说是一个糟糕的指示吗?
发布于 2021-06-23 20:01:47
请记住,“压缩”实体可能比原始实体更大。这是因为必须添加额外的数据(压缩表和其他元数据),这将取决于源和压缩算法。在您的示例中,我将比较产生的字符串大小并使用较小的字符串,相应地设置压缩头。
如果您正在压缩的数据类型不能始终给您提供良好的压缩比,那么它可能根本不值得。最后,尝试改变压缩算法。
https://stackoverflow.com/questions/68106308
复制相似问题