如何在响应 headers 中获取资源的 crc32?

How to get the crc32 of a resource in the response headers?

我需要通过 http GET 请求获取我正在下载的文件的 CRC32 校验和 - 而无需实际打开响应 body。

我正在构建一个代理应用程序 - 它从客户端获取请求,并执行实际的 GET 调用。我希望代理从服务器获得的响应包含校验和,而不必通读响应中的实际数据 body。我将响应 body reader 流连接到我 return 到客户端的编写器流。

我阅读了有关 "Want-Digest" header 的信息,我可以将其添加到请求中,并且应该会导致包含 "Digest" header 和校验和的响应 -但它没有用。 我还查看了 Content-MD5 header,但是当我尝试下载一些照片时,我发现我没有在响应中得到它(另外,我读到它已被弃用)。

提前致谢!

任何headers,例如'Want-Digest'或'Content-MD5',将由服务器执行。大多数服务器可能会忽略那些 headers,这就是它们不适合您的原因。如果要计算body的CRC32,就得自己打开body计算。

如果你可以访问 TCP headers 我想你可以访问 TCP 校验和,尽管即使与 CRC32 相比,它也是一个相对较弱的校验和,它也是整个数据包的校验和,而不是只是 body.