实例1:
package main
import (
"fmt"
"log"
"net/url"
)
func main() {
u, err := url.Parse("http://xxxxxx.com")
if err != nil {
log.Fatal(err)
}
u.Scheme = "https"
u.Host = "google.com"
q := u.Query()
q.Set("q", "golang")
u.RawQuery = q.Encode()
fmt.Println(u)
}
实例2:
package main
import (
"fmt"
"log"
"net/url"
)
func main() {
u, err := url.Parse("https://xxxxxx.com")
if err != nil {
log.Fatal(err)
}
fmt.Println(u.Path)
fmt.Println(u.RawPath)
fmt.Println(u.String())
}
实例3:
package main
import (
"fmt"
"log"
"net/url"
)
func main() {
u, err := url.Parse("https://xxxxxx.com/path")
if err != nil {
log.Fatal(err)
}
fmt.Println(u.Hostname())
u, err = url.Parse("https://[2001:0db8:85a3:0000:0000:8a2e:0370:7334]:17000")
if err != nil {
log.Fatal(err)
}
fmt.Println(u.Hostname())
}
func QueryEscape(s string) string
QueryEscape 对字符串进行转义, 以便可以将其安全地放置在 URL 查询中。
实例4:
package main
import (
"fmt"
"net/url"
)
func main() {
query := url.QueryEscape("my/cool+blog&about,stuff")
fmt.Println(query) // my%2Fcool%2Bblog%26about%2Cstuff
}