如何在http.Request中获取URL

我建立了一个HTTP服务器。我正在使用下面的代码来获取请求URL,但未获取完整URL。

func Handler(w http.ResponseWriter, r *http.Request) {  

fmt.Printf("Req: %s %s", r.URL.Host, r.URL.Path)

}

我只得到"Req: / ""Req: /favicon.ico"

我想获得完整的客户端请求的URL作为"1.2.3.4/""1.2.3.4/favicon.ico"

谢谢。

回答:

从net / http包的文档中:

type Request struct {

...

// The host on which the URL is sought.

// Per RFC 2616, this is either the value of the Host: header

// or the host name given in the URL itself.

// It may be of the form "host:port".

Host string

...

}

您的代码的修改后的版本:

func Handler(w http.ResponseWriter, r *http.Request) {

fmt.Printf("Req: %s %s\n", r.Host, r.URL.Path)

}

输出示例:

Req: localhost:8888 /

以上是 如何在http.Request中获取URL 的全部内容, 来源链接: utcz.com/qa/421308.html

回到顶部