登录
首页 >  Golang >  Go问答

从postman获取http post请求中的参数

来源:stackoverflow

时间:2024-04-25 16:21:39 225浏览 收藏

本篇文章主要是结合我之前面试的各种经历和实战开发中遇到的问题解决经验整理的,希望这篇《从postman获取http post请求中的参数》对你有很大帮助!欢迎收藏,分享给更多的需要的朋友学习~

问题内容

我有一个 go 服务器,但似乎我无法从 post 请求中获取服务器中的 post(表单)参数列表

当我在“正文”选项卡中选择的选项是 form-data 时,我从邮递员发送请求,并且请求如下所示:

POST /todo/323/item HTTP/1.1
Host: localhost:8080
Cache-Control: no-cache
Postman-Token: ef4b5606-3079-fb02-824f-f58ae89ee6f3
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="aaa"

skhdfb
------WebKitFormBoundary7MA4YWxkTrZu0gW
Content-Disposition: form-data; name="test"

1213
------WebKitFormBoundary7MA4YWxkTrZu0gW--

我得到 null 但当选项是 x-www-form-urlencoded 时它工作正常。我应该怎么办?

这就是我尝试获取值的方式:

fmt.fprintln(w, req.formvalue("aaa"))

提前感谢您的帮助


解决方案


当它是多部分时,你必须这样做:

req.parsemultipartform(0)
fmt.println(req.formvalue("aaa"))

或者如果您不想将整个内容加载到内存中,您可以这样做:

form, err := req.MultipartReader()
for {
    part, err := form.NextPart()
    if err == io.EOF {
        break
    }
    if part.FormName() == "aaa" {
        buf := new(bytes.Buffer)
        buf.ReadFrom(part)
        fmt.Println(buf.String())
    } 
}

理论要掌握,实操不能落!以上关于《从postman获取http post请求中的参数》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>