Golang的原始HTTP响应



我有一个请求,但是由于某种原因,响应主体仅包含响应的最后一行(整个响应是在提琴手中捕获的(。如果我使用请求模块在Python中重新创建请求,也会发生同样的事情。但是,我注意到如果我在Python中进行整个原始响应,我可以看到所有行(由多个r隔开(。我想知道是否可以像Python中的response.raw.data方法一样查看GO中的整个原始响应。换句话说,有什么方法可以查看整个文本响应,而不是切断除最后一行以外的所有内容吗?如果有人知道为什么要切断最后一行,也将受到极大的赞赏。

澄清,这只会发生在这个单个端点,我怀疑响应体中的r S可能是罪魁祸首,但我不确定。我还没有从任何其他HTTP响应中看到这种行为。

编辑:这是我用来查看响应的代码

bodyB, _ := ioutil.ReadAll(resp.Body)
bodyStr := string(bodyB)

r是一个马车返回,但不是新线路,因此当您打印它时,您将获得所有行,但它们每次都会被覆盖。

您可能想做:

bodyB, _ := ioutil.ReadAll(resp.Body)
bodyStr := string(bytes.Replace(bodyB, []byte("r"), []byte("rn"), -1))

最新更新