如何在不使用zlib库的情况下在C编程中使用gzip编码

如何在不使用zlib库的情况下在C编程中使用gzip编码,c,compression,gzip,httpserver,content-encoding,C,Compression,Gzip,Httpserver,Content Encoding,我想在基于C的简单http服务器中使用gzip编码。 但我不想使用zlib库。请建议我如何做到这一点?如果您不能(或拒绝)使用实现gzip的库,唯一剩下的选择将是自己实现(以及一个解决方案)。这就是zlib存在的原因——标准C库不包含此算法的实现。您可以运行gzip实用程序来压缩数据。但是,在代码中直接使用zlib库会比在每次需要响应http请求时分叉作业更有效 或者您可以编写自己的gzip格式压缩代码。由于您的问题不清楚为什么要避免使用zlib,因此编写自己的压缩器是否能够满足您的需求也不清楚

我想在基于C的简单http服务器中使用gzip编码。
但我不想使用zlib库。请建议我如何做到这一点?

如果您不能(或拒绝)使用实现gzip的库,唯一剩下的选择将是自己实现(以及一个解决方案)。这就是zlib存在的原因——标准C库不包含此算法的实现。

您可以运行gzip实用程序来压缩数据。但是,在代码中直接使用zlib库会比在每次需要响应http请求时分叉作业更有效


或者您可以编写自己的gzip格式压缩代码。由于您的问题不清楚为什么要避免使用zlib,因此编写自己的压缩器是否能够满足您的需求也不清楚。在任何情况下,仅使用zlib代码所需的时间都要少得多,它可以免费用于任何代码,无论是商业代码还是非商业代码,甚至不需要属性。

您是否可以使用类似于zlib的其他库,如zstd?还是所有的图书馆都不可能?如果是的话,除了“自己写”之外,你希望得到什么样的答案?对不起,这还不清楚。你的要求到底是什么?基于这些要求,你尝试过什么?@Daskwuff我不想使用任何库。在C标准库中,默认情况下没有任何东西可以让我们对字符串进行编码并通过HTTP响应发送。@潜伏者我应该用gzip格式编码一个条带,然后通过HTTP响应发送它。我想在不使用任何外部库的情况下实现编码。我已将内容编码标题更改为gzip,浏览器显示内容编码错误。@Amaresh标准C库没有gzip函数。如果您不想使用库来实现这一点,那么恐怕您必须自己编写。不,我的意思是使用
pipe()
fork()
函数从您的程序中运行gzip,或类似的程序。