http - (Go)发送http请求时如何控制gzip压缩?

标签 http go gzip

想请教大家请求HTTP Post报文时如何控制gzip压缩。 “接受编码:gzip”作为 Http 请求 header 总是添加到我发送的 http 请求中。 但我不想使用 gzip 压缩。 我该如何管理?

在执行 http.NewRequest 之前,我一直使用传输类型的 DisableCompression。 而且我已经尝试将值 true 和 false 都设置为 DisableCompression。 然而,到目前为止它还不能很好地工作。

我的部分代码示例如下。

//gzip
tr := &http.Transport{
    DisableCompression: true,
}
//client := &http.Client{}
client := &http.Client{Transport: tr}

req, err := http.NewRequest(
    "POST",
    reqUrl,
    bytes.NewBuffer(bytesMessage),
)

//Set Http Headers
req.Header.Add("Content-Type", "application/json; charset=UTF-8")
req.Header.Add("Accept", "*/*")
req.Header.Del("Accept-Encoding")

//HTTP request
resp, err := client.Do(req)

我使用的 Go 版本是 1.5。

提前致谢。

最佳答案

尝试

req.Header.Set("Accept-Encoding", "identity")

关于http - (Go)发送http请求时如何控制gzip压缩?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33469723/

相关文章:

regex - 在多个目录和压缩文件中使用 Grep

jmeter - 使用 JMeter 2.12 时如何避免 "java.util.zip.ZipException: Not in GZIP format"错误

json - 使用模板将 json 输出到 http.ResponseWriter

c# - 如何通过 TCP 通过 Internet 将 Motion JPEG 发送到 Windows Phone

json - 使用 multipart/form-data 比 JSON + Base64 更好吗?

go - 如何使用 r3labs/diff 比较整个结构

go - 从配置文件中删除键值对?

java - 从 API 请求 json 时无法下载超过 16144 个字符

utf-8 - 在Go中解码ISO-8859-1 XML输入

amazon-web-services - 从云端和 s3 提供 gzip 和 br 文件