URL操作

作者: 哆啦在这A梦在哪 | 来源:发表于2018-07-26 16:38 被阅读3次

    package main

    import "fmt"
    import "net/url"
    import "strings"

    func main() {
    
        s := "postgres://user:pass@host.com:5432/path?k=v#f" //uel地址
        u, _ := url.Parse(s)                                 //解析获得的S能直接使用
        fmt.Println("Scheme:", u.Scheme)                     //这个是URL中的一个地址,也可以理解为协议,http,localhost,在iOS中,拿他区分来源应用,比如微信中发起的"weixin://"
        fmt.Println("User:", u.User)                         //用户信息
        fmt.Println("username:", u.User.Username())          //用户名
        p, _ := u.User.Password()
        fmt.Println("password:", p) //密码
        // Host包含了主机名和端口,如果需要可以手动分解主机名和端口
        fmt.Println("host:", u.Host)
        h := strings.Split(u.Host, ":")
        fmt.Println("h0:", h[0])
        fmt.Println("h1:", h[1])
        // 这里我们解析出路径和`#`后面的片段
        fmt.Println("path:", u.Path)
        fmt.Println("fragment:", u.Fragment)
    
        fmt.Println(u.RawQuery) //URL后面跟的参数值value
        m, _ := url.ParseQuery(u.RawQuery)
        fmt.Println(m)
        fmt.Println(m["k"][0])
        q := u.Query()
        q.Add("one", "one")
        u.RawQuery = q.Encode() //把添加的参数关联进URL
        fmt.Println("url:", u)
    }
    

    运行结果:


    image.png

    相关文章

      网友评论

          本文标题:URL操作

          本文链接:https://www.haomeiwen.com/subject/qovbmftx.html