问题标签 [content-encoding]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
fiddler - 如何在提琴手中使用 zlib 解码响应
我知道有,Response body is encoded. Click to decode
但它不起作用。
我得到的响应是由zlib
not编码的,gzip
并且响应标头中没有Content-Encoding: gzip
。
现在我可以将响应正文保存到一个文件中,然后将其解码Python
,但我真的很想看到fiddler
.
我该怎么办?
http - HTTP 代理是否应该将 Content-Encoding 标头复制回客户端?
据说Transport
会Content-Encoding
自动处理(比如读取时自动解压resp.Body
)。
也有人说,Content-Encoding
是端到端的 HTTP 标头,而不是逐跳标头。
因此,如果一个代理复制Content-Encoding
回客户端的响应头,并且这个代理也是io.Copy
上游响应体(可能会自动解压缩,因为io.Copy
将从中读取resp.Body
),这不会与客户端不一致吗?(Content-Encoding
从上游响应复制,但正文已解压缩)
gzip - 谷歌云存储 gzip 压缩,错误的标头
刚开始使用谷歌云存储。我在从它接收 gzip 文件时遇到问题。存储的文件经过 gzip 压缩,但会根据要求进行解压缩。我已阅读所有文档、论坛并尝试了数十种不同的标头组合,但在浏览器中获取的文件仍然没有压缩。有人能指出我做错了什么吗?
关于 gzip、标头、转码的文章 https://cloud.google.com/storage/docs/transcoding
我使用此命令将文件移动到存储中
文件在上传文件之前被 gzip 压缩,一旦它被存储,大小会减少 5 倍,我已经在控制台中签入。
浏览器请求标头
响应标头
因此,谷歌设置了自定义标头,内容在存储中被压缩,但它向我发送解压缩的响应,并且没有 Content-Encoding 标头。
不确定我上传文件的方式是错误的,还是缺少一些标题。失落的感觉。链接到文件-> http://lolchamps.tomdid.com/bundle.js
任何帮助将非常感激。
更新:发现了一些有趣的东西,如果我使用谷歌 URL 请求文件 - https://storage.googleapis.com/lolchamps.tomdid.com/bundle.js它返回 gzip 文件,如果通过我的域请求相同的文件它返回解压版。为什么???我闻到了黑魔法。
gzip - Receiving gzip Content-Encoding with dotNetRDF
How do I tell dotNetRDF to request and accept data from a remote triplestore where the response is encoded using gzip?
Looking at the source code for the LoadGraph method of SparqlHttpProtocolConnector, it doesn't appear to me to have a mechanism for setting the Accept-Encoding header, nor am I seeing any logic that would process a Content-Encoding header.
I tried modifying LoadGraph to set Accept-Encoding, and the content then comes back with the right Content-Type and Content-Encoding, but the line of code that determines how to handle the response is
and GetParser doesn't have any logic that considers the Content-Encoding.
However, it seems like the pieces are present: there's certainly infrastructure in place to process a gzipped file.
Is there another way to do this that I'm missing, or would this be a new feature request?
Thanks.
amazon-web-services - 从 s3 请求文件,没有 gzip 编码
我有一个小应用程序正在访问 S3 上的文件。我正在处理 3 种不同的文件类型,有些是 gzip 压缩的,有些不是。
我有一些代码正在查看文件类型(不幸的是没有扩展名,所以我必须尝试解码不同的类型)但是添加一些文件是压缩的,而有些文件没有压缩会产生更多的开销。
我希望有一种方法可以从 s3 请求内容编码,但在文档中没有找到任何内容。
如果这是不可能的,是否有一种同步的方式来检查文件的内容编码?我在 s3 对象中看不到任何显示编码的内容,返回的 S3 上唯一的属性是 Content-Type、ETag、Body、Metadata、ContentLength 和 AcceptRanges。
c# - 添加 Content-Encoding 作为请求标头后出现 404 错误
我必须将 Content-Encoding 和 Accept-Encoding 作为标头(使用 gzip 压缩)添加到HttpWebRequest
对象。通过添加以下行来设置 Accept-Encoding:request.AutomaticDecompression = DecompressionMethods.GZip;
就可以了。但是,在使用此行设置 Content-Encoding(我不确定它是否正确完成)后request.Headers.Add(HttpRequestHeader.ContentEncoding, "gzip");
,我收到 404 错误。这是我的请求代码:
如果您能帮助我处理该错误,我将不胜感激。
另外,这是我的压缩代码,也许有压缩的东西。
amazon-web-services - AWS API Gateway 以 GZIP 形式返回响应
我在 API 网关中部署了一个应用程序,即 APIG -> ELB -> ECS。当我请求 gzip 时,即 Accept: application/json; 接受编码:应用程序/gzip。客户端(浏览器、提琴手)无法读取内容。但是通过 ELB 触发的相同请求是干净的。API Gateway 是否在响应中添加/删除任何字节。谁能帮我调整一下?
@ankit:它与同一个问题有关。但是现在 API 网关具有二进制支持,我将其配置为以这种方式返回它。但问题是压缩响应是不正确的。Fiddler 和其他客户端无法解压缩它。
media-type - Brotli 压缩是否有 IANA 媒体类型?
对于 gzip,有一个 IANA 媒体类型“application/gzip”和一个 HTTP 内容编码缩写“gzip”。
对于 Brotli,有一个内容编码“br”。Brotli 压缩数据是否有 IANA 媒体类型?如果不是,为什么不呢?
光伏
javascript - 是否可以在服务器端 gzip 文件并在浏览器中透明地解压缩它?
我的 Web 应用程序将 JSON 文件发送到客户端。这些文件可能比较大。
我可以在服务器端压缩它们并在客户端透明地接收未压缩的内容吗?
例如,如果我写
我可以只ajax/test.json
压缩 gzip 并将内容编码设置为 gzip 吗?
php - 将 Content-Encoding 设置为 true 有什么作用?
我在继承的一些 PHP 代码中遇到了这一行:
查看 MDN 文档中的 Content-Encoding 'true' 不是有效值。它期待像 gzip 或 deflate 这样的东西,不是真的。
我也看了看,如果您将其设置为 true,我看不到 PHP 中的任何特殊行为。
但是,在我正在查看的代码中,这一行具有以下效果:它使正在输出的文件被压缩。它还将一个空的 Content-Encoding 标头添加到 http 响应标头。后者我理解 - 前者不是。
这里有一些使用 PHP 的 ob_gzhandler() 的交互,它已经被调用并且已经正确地将 Content-Encoding 标头正确设置为 gzip。
如果我注释掉这一行,则文件不会被压缩。
似乎正在发生的事情是这样的:
ob_gzhandler()
将 Content-Encoding 标头设置为 gzip。然后下一行:header('Content-Encoding: ', true)
- 在以某种方式启用先前设置之后调用ob_end_clean()
- 但没有此,ob_gzhandler 的先前设置不会“激活”。这有意义吗?
基本上 - 为什么有人想做: