2 回答

TA貢獻1848條經驗 獲得超10個贊
我不確定我是否理解問題,但這是我調用 https google 鏈接并打印輸出。
package main
import (
"fmt"
"io/ioutil"
"log"
"net/http"
"golang.org/x/net/http2"
)
func main() {
client := &http.Client{Transport: transport2()}
res, err := client.Get("https://www.google.com")
if err != nil {
log.Fatal(err)
}
body, err := ioutil.ReadAll(res.Body)
if err != nil {
log.Fatal(err)
}
res.Body.Close()
fmt.Printf("Code: %d\n", res.StatusCode)
fmt.Printf("Body: %s\n", body)
}
func transport2() *http2.Transport {
return &http2.Transport{
DisableCompression: true,
AllowHTTP: false,
}
}

TA貢獻1869條經驗 獲得超4個贊
謝謝大家的意見。Travis 似乎已經確定了我遇到的問題。我正在閱讀的響應正文似乎是 gzip 編碼的(響應包含“Content-Encoding:gzip”)。為了驗證是否是這種情況,我必須在轉發之前顯式刪除原始請求中的“Accept-Encoding: gzip”標頭,并將傳輸配置為設置“DisableCompression:true”。一旦我進行了這兩項更改,我就會看到沒有“Content-Encoding”標題的響應,并且我閱讀的正文是人類可讀的。
- 2 回答
- 0 關注
- 172 瀏覽
添加回答
舉報