在Go中从一个URL中获取一个主机名(域名)的方法

2,636 阅读1分钟

要从Go中的URL中获得一个主机名或域名,首先要使用 url.Parse()函数,解析作为输入的URL,然后使用 url.Hostname()方法,返回主机名。如果你不想要域名中的www. 前缀,可以用函数删除它。 strings.TrimPrefix()函数删除。

package main
import (
"fmt"
"log"
"net/url"
"strings"
)
func main() {
input := "https://www.gosamples.dev/abc/def"
url, err := url.Parse(input)
if err != nil {
log.Fatal(err)
}
hostname := strings.TrimPrefix(url.Hostname(), "www.")
fmt.Println(hostname)
}

输出

gosamples.dev