golang对get请求中的query参数中的分号处理

aside section ._1OhGeD · · 122 次点击 · · 开始浏览    

今天在测试接口遇到一个问题,一个参数只获取到了一半怀着强烈的怀疑,不知道是golang自身还是使用的框架或者postman的原因,进行了排查。
首先测试接口使用了postman


image.png

结果:只接受到了bbb参数中的一般


image.png

二。浏览器测试


image.png

结果:也只有一半


image.png

三。搭建自己的golang服务端口

package main

import (
    "log"
    "net/http"
)

func sayhelloName(w http.ResponseWriter, r *http.Request) {
    r.ParseForm() //解析参数,默认是不会解析的
    //这些信息是输出到服务器端的打印信息
    log.Println("aaa:", r.Form["aaa"])
    log.Println("bbb:", r.Form["bbb"])
}

func main() {
    http.HandleFunc("/", sayhelloName)       //设置访问的路由
    err := http.ListenAndServe(":9090", nil) //设置监听的端口
    if err != nil {
        log.Fatal("ListenAndServe: ", err)
    }
}

继续请求,分别使用postman和浏览器访问
结果:
结果:也只有一半


image.png

结论:
golang在接受query参数时,会自动忽略分号后面的东西,真的坑哦,希望广大大佬们,有不足之处,请高抬贵手,给我指正。

本文来自:简书

感谢作者:aside section ._1OhGeD

查看原文:golang对get请求中的query参数中的分号处理

入群交流(和以上内容无关):Go中文网 QQ 交流群:798786647 或加微信入微信群:274768166 备注:入群;关注公众号:Go语言中文网

122 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传