使用标准提取片段数据(foo在http://domain.com/path#foo 中)没有运气http.Server。package mainimport ( "fmt" "net/http")type Handler struct {}func (handler Handler) ServeHTTP(w http.ResponseWriter, r *http.Request) { fmt.Printf("Path = \"%v\" Fragment = \"%v\"\n", r.URL.Path, r.URL.Fragment)}func main() { var handler Handler http.ListenAndServe(":30000", handler)}产生空片段http://127.0.0.1:30000/path#foo:Path = "/path" Fragment = ""如何使用 golang 的 builtin 获取片段数据http.Server?
1 回答
守着星空守着你
TA贡献1799条经验 获得超8个赞
你不能。这不是 Go 的事情——URL 片段不会通过 HTTP 发送到服务器。它们只是一个浏览器概念。
这是一个相关问题,其中的文档http.Request已更改为:
// For server requests the URL is parsed from the URI
// supplied on the Request-Line as stored in RequestURI. For
// most requests, fields other than Path and RawQuery will be
// empty. (See RFC 2616, Section 5.1.2)
如果出于某种原因需要它,您可以将一些 JavaScript 串在一起,以将片段作为GET参数或其他东西包含在请求中。
- 1 回答
- 0 关注
- 197 浏览
添加回答
举报
0/150
提交
取消