登录
首页 >  Golang >  Go问答

golang 有什么好办法解析 body 内容么?

来源:SegmentFault

时间:2023-02-22 13:28:13 203浏览 收藏

怎么入门Golang编程?需要学习哪些知识点?这是新手们刚接触编程时常见的问题;下面golang学习网就来给大家整理分享一些知识点,希望能够给初学者一些帮助。本篇文章就来介绍《golang 有什么好办法解析 body 内容么?》,涉及到HTTP、go,有需要的可以收藏一下

问题内容

这是代码,

func sayhelloName(w http.ResponseWriter, r \*http.Request) {
    fmt.Println("header=", r.Header)

    s, \_ := ioutil.ReadAll(r.Body)
    fmt.Printf("body=%s\\n",s)
}

这是返回值,

header= map[Accept-Encoding:[gzip] Connection:[close] Content-Length:[318512] Content-Type:[multipart/form-data; boundary=---------------------------8d7f730cd9470c6] Remote-Host:[183.250.162.102] User-Agent:[Go-http-client/1.1] X-Forwarded-For:[183.250.162.102, 120.76.211.89] X-Real-Ip:[183.250.162.102]]
body=-----------------------------8d7f730cd9470c6
Content-Disposition: form-data; name="bigFileMd5"

c73c0667b84b04bf3125643fac9331aa
-----------------------------8d7f730cd9470c6
Content-Disposition: form-data; name="cloudtoken"

267d1c6d911d57b64e6ea815818dbaad32cb4434e92234e42677caa5f344a332
-----------------------------8d7f730cd9470c6
Content-Disposition: form-data; name="deleteFile"

111101
-----------------------------8d7f730cd9470c6
Content-Disposition: form-data; name="fileCount"

11

网上的方案都是按照 json 来的,我这个明显不是。如果有现成的方法可以切割开最好,没有就只有手动写了,但我觉得还是不要造轮子比较好,我网上找了一下开源,也没有找到,初入 golang,还请指点一下,谢谢。

正确答案

fmt.Printf("PostFormValue(smallFileMd5)=%s\n", r.PostFormValue("smallFileMd5"))
fmt.Printf("PostFormValue(deleteFile)=%s\n", r.PostFormValue("deleteFile"))

file, _, err := r.FormFile("projectUploader")
if err != nil {
    fmt.Println(err)
}
defer file.Close()
s1, _ := ioutil.ReadAll(file)
fmt.Printf("filecontent=%s\n",s1)

以上就是《golang 有什么好办法解析 body 内容么?》的详细内容,更多关于golang的资料请关注golang学习网公众号!

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