216

Go で単純な http GET を実行しています。

client := &http.Client{}
req, _ := http.NewRequest("GET", url, nil)
res, _ := client.Do(req)

しかし、ドキュメントのリクエストヘッダーをカスタマイズする方法が見つかりません、ありがとう

4

4 に答える 4

306

RequestのHeaderフィールドは public です。あなたはこれを行うことができます:

req.Header.Set("name", "value")
于 2012-10-12T17:36:52.097 に答える
60

http.Request ヘッダーで「Host」をSetメソッド経由で設定できないことに注意してください

req.Header.Set("Host", "domain.tld")

しかし、直接設定することができます:

req.Host = "domain.tld":

req, err := http.NewRequest("GET", "http://10.0.0.1/", nil)
if err != nil {
    ...
}

req.Host = "domain.tld"
client := &http.Client{}
resp, err := client.Do(req)
于 2016-12-08T08:05:44.083 に答える
1

Go の net/http パッケージには、ヘッダーを処理する多くの関数があります。その中には、 AddDelGet、およびSetメソッドがあります。セットの使用方法は次のとおりです。

func yourHandler(w http.ResponseWriter, r *http.Request) {
    w.Header().Set("header_name", "header_value")
}
于 2016-06-19T19:14:48.950 に答える