【发布时间】:2019-07-12 10:02:03
【问题描述】:
我们有一个接受 JSON 的 API。我们鼓励人们在发布之前对有效负载进行 gzip,因为我们对大小施加了限制。我想查看原始 JSON 和 gzip 之间的实际大小差异,但我似乎无法可靠准确地获取构建后的 http 请求的大小。
对于非压缩版本,MyJSON []byte 是我将其填充到 http 请求之前的原始数据,如下所示:
req, err := http.NewRequest("POST", url, bytes.NewBuffer(MyJSON))
对于 gzip 版本,我将数据压缩到缓冲区中,然后将其添加到 http 请求中,如下所示:
req, err := http.NewRequest("POST", url, &buffer)
是否可以获取http请求的大小?如果没有,我应该能够使用len() 获得原始MyJSON []byte 的大小,但我似乎无法获得压缩版本的bytes.Buffer 的大小。
【问题讨论】:
标签: json go httprequest gzip