Answers:
请注意,无法通过Set
方法设置http.Request标头中的“主机”
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)
Go的net / http包具有许多处理标头的功能。其中包括Add,Del,Get和Set方法。使用Set的方法是:
func yourHandler(w http.ResponseWriter, r *http.Request) {
w.Header().Set("header_name", "header_value")
}
r *http.Request
然后返回中的某项 w http.ResponseWriter
。可能是因为您正在返回标头,所以需要在响应编写器中编写它们。并且w
是一位回应作家。您觉得这合乎逻辑吗?