如何从golang的客户端接收多部分?

如何从golang的客户端接收多部分?,go,glide-golang,Go,Glide Golang,这里是我的代码和输出: func RestClient(req *http.Request) { fmt.Println("main (120):::", req.MultipartForm.File) } main(120)::&{map[用户名:[0xc4200a66e0]菱形:[0xc4200f67b0]} 我想要(切片字节[117 115 101 114 78 97 109 101]),但无法取出,如何打印(内容[]字节),因为我们知道FileHeader结构中的字段:

这里是我的代码和输出:

func RestClient(req *http.Request) {
        fmt.Println("main (120):::", req.MultipartForm.File)
}
main(120)::&{map[用户名:[0xc4200a66e0]菱形:[0xc4200f67b0]}

我想要(切片字节[117 115 101 114 78 97 109 101]),但无法取出,如何打印(内容[]字节),因为我们知道FileHeader结构中的字段:

type FileHeader struct {
    Filename string
    Header   textproto.MIMEHeader
    Size     int64

    content []byte
    tmpfile string
}
提前感谢。

呼叫,返回:


处理此文件的方式取决于要对内容执行的操作。ioutil.ReadAll是一个选项,但通常更方便的做法是保持原样,使用io.Copy将内容写入另一个io.Writer。阅读完毕后,别忘了调用Close。

谢谢你的回答,你完全解决了我关于k,v:=range req.MultipartForm.File的问题{if k==“userName”{for,v2:=range v{fmt.Println(“main(130)::”,v2)b,:=v2.Open()sliceByte,{u:=ioutil.ReadAll(b)Println(“main(245)::”,string(sliceByte))}
 > main (130)::: &{ map[Content-Length:[8]
    > Content-Disposition:[form-data; name="dk"]
    > Content-Transfer-Encoding:[binary] Content-Type:[multipart/form-data;
    > charset=utf-8]] 8 [117 115 101 114 78 97 109 101] }
type FileHeader struct {
    Filename string
    Header   textproto.MIMEHeader
    Size     int64

    content []byte
    tmpfile string
}
type File interface {
        io.Reader
        io.ReaderAt
        io.Seeker
        io.Closer
}