在 URL 中,权限应该是可选的,这意味着诸如此类的 URLmailto:John.Doe@example.com是有效的。在 Golang 1.15.2 中,如果使用net/url该类创建一个像上面这样的 URL,它似乎不允许在没有权限的情况下创建 URL。例如package mainimport ( "fmt" "net/url")func main() { var theURL = url.URL{} theURL.Scheme = "mailto" theURL.Path = "John.Doe@example.com" fmt.Println(theURL.String()) // should be mailto:John.Doe@example.com, but is mailto://John.Doe@example.com}我在这里遗漏了什么或者这在技术上是一个错误吗?
1 回答
一只名叫tom的猫
TA贡献1906条经验 获得超3个赞
使用theURL.Opaque
而不是theURL.Path
. 见 https://golang.org/pkg/net/url/#URL
方案后不以斜杠开头的 URL 被解释为:
scheme:opaque[?query][#fragment]
Go Playground 中的工作代码:https: //play.golang.org/p/TFATDQu4PHc
- 1 回答
- 0 关注
- 81 浏览
添加回答
举报
0/150
提交
取消