簡體   English   中英

Golang中的原始HTTP響應

[英]Raw http response in golang

我有一個對端點的請求,但是由於某種原因,響應主體僅包含響應的最后一行(整個響應都在提琴手中捕獲)。 如果我使用請求模塊在python中重新創建請求,也會發生同樣的事情。 但是,我注意到,如果我在python中獲取整個原始響應,我將能夠看到所有行(由多個\\r分隔)。 我想知道是否可以像使用python中的response.raw.data方法一樣查看整個原始響應。 換句話說,有沒有一種方法可以查看整個文本響應,而不是切斷除了最后一行以外的所有內容? 如果有人知道為什么最后一行被切斷,也將不勝感激。

為了澄清,這僅在單個端點上發生,我懷疑響應主體中的\\r可能是罪魁禍首,但我不確定。 我沒有從任何其他http響應中看到此行為。

編輯:這是我用來查看響應的代碼

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

\\r是回車符,但不是新行,因此在打印時,您會得到所有行,但是每次都會覆蓋它們。

您可能會想做:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM