if req.URL, err = ParseURL(url); err != nil {
break
}
+ url = req.URL.String()
if r, err = send(&req); err != nil {
break
}
if req.URL, err = ParseURL(url); err != nil {
return
}
+ url = req.URL.String()
if r, err = send(&req); err != nil {
return
}
if url.Host != "" || url.Userinfo != "" {
result += "//"
if url.Userinfo != "" {
- result += urlEscape(url.Userinfo, false) + "@"
+ // hide the password, if any
+ info := url.Userinfo
+ if i := strings.Index(info, ":"); i >= 0 {
+ info = info[0:i] + ":******"
+ }
+ result += urlEscape(info, false) + "@"
}
result += url.Host
}
},
"",
},
+ URLTest{
+ "http://user:password@google.com",
+ &URL{
+ Raw: "http://user:password@google.com",
+ Scheme: "http",
+ Authority: "user:password@google.com",
+ Userinfo: "user:password",
+ Host: "google.com",
+ },
+ "http://user:******@google.com",
+ },
+ URLTest{
+ "http://user:longerpass@google.com",
+ &URL{
+ Raw: "http://user:longerpass@google.com",
+ Scheme: "http",
+ Authority: "user:longerpass@google.com",
+ Userinfo: "user:longerpass",
+ Host: "google.com",
+ },
+ "http://user:******@google.com",
+ },
}
var urlnofragtests = []URLTest{