2 回答
TA贡献1798条经验 获得超3个赞
要发布文件,请使用打开的文件作为 HTTP 请求正文:
f, err := os.Open("file.json")
if err != nil {
log.Fatal(err)
}
defer f.Close()
httpposturl := "https://reqres.in/api/users"
request, err := http.NewRequest("POST", httpposturl, f)
if err != nil {
log.Fatal(err)
}
request.Header.Set("Content-Type", "application/json; charset=UTF-8")
response, err := http.DefaultClient.Do(request)
if err != nil {
log.Fatal(err)
}
defer response.Body.Close()
fmt.Println("response Status:", response.Status)
TA贡献2039条经验 获得超7个赞
注意:无论您想通过 http 协议发布什么(文字、文件、图像甚至视频等),实际上您都发布了字节流。这意味着您应该将要发布的任何内容视为二进制字节数组。
在您的情况下,您应该首先打开要发布的文件,并创建一个指向您的文件的 io.Reader 类型的实例。简单代码如下:
f, _ := os.Open("./my-file")
http.Post("https://example.com/api","application/json",f)
- 2 回答
- 0 关注
- 182 浏览
添加回答
举报