golang分解http GET字符参数串到map

作者: 毛毛v5 | 来源:发表于2019-04-04 09:57 被阅读4次

来了一串字符串,类似于http GET的URL参数串。不知道"net/url"能解http://www.pic98.com/srs?sessionid=22222&token=3333 这样的串。但是能不能分解 ?sessionid=22222&token=3333 这样的串没试过。其实自己构造个解析也很快的。上代码。

func uri2map(uri string) (map[string]string, error) {
    m := make(map[string]string)
    if len(uri) < 1 { // 空字符串
        return m, errors.New("uri is none")
    }
    if uri[0:1] == "?" { // 有没有包含?,有的话忽略。
        uri = uri[1:]
    }

        // 首先分解&(sessionid=22222&token=3333 )变成
        // sessionid=222222 和 token=3333
    pars := strings.Split(uri, "&") 
    for _, par := range pars {
                // 然后分解 sessionid=222222 和 token=3333
        parkv := strings.Split(par, "=") 
        m[parkv[0]] = parkv[1] // 等号前面是key,后面是value
    }
    log.Println(m)
    return m, nil
}

相关文章

  • golang分解http GET字符参数串到map

    来了一串字符串,类似于http GET的URL参数串。不知道"net/url"能解http://www.pic98...

  • http get和post请求参数详解

    一 Get请求参数 问题缘起:http请求参数类型有什么?比如传递a=null,那这个null是什么?跟空字符串和...

  • http_build_query

    PHP使用http_build_query()构造URL字符串的方法(可将POST参数组转换拼接成GET请求链接)...

  • url中出现字符串

    经常遇到这样的问题在get/post请求的时候,传的头参数中包含有字符串,而直接使用字符串拼接的话会使字符串参数带...

  • AES-256-CBC加密

    项目里是给接口的参数加密。原则是 : 把参数转化为map对象,得到json 字符串,加密这个字符串。想要验证前端加...

  • golang字符串重新编码

    golang 字符串重新编码 golang 字符串重新编码//byte decode/*** function ...

  • 684. 缺少的字符串

    给出两个字符串,你需要找到缺少的字符串.样例 分解到vector中借助find函数 先把两个字符串都分解到vect...

  • golang实现java string的序列化

    golang写入字符串 java读取字符串

  • 十二、express post与get请求

    get请求 get请求的参数在URL中,在原生Node中,需要使用url模块来识别参数字符串。在Express中,...

  • 异步请求那点事儿

    fetch get 请求 默认请求方式,不能传参 post 请求 参数为字符串类型 axios get请求 pos...

网友评论

    本文标题:golang分解http GET字符参数串到map

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