golang实现请求地址:httpsipportopenapiwtsfilev1upload请求方式:POST 数据类型 multipartform-data返回格式:JSON
以下是一个简单的golang实现示例:
package main
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
"log"
"mime/multipart"
"net/http"
"os"
)
func main() {
// 要上传的文件
file, err := os.Open("path/to/file")
if err != nil {
log.Fatal(err)
}
defer file.Close()
// 创建multipart/form-data请求体
body := &bytes.Buffer{}
writer := multipart.NewWriter(body)
part, err := writer.CreateFormFile("file", "filename")
if err != nil {
log.Fatal(err)
}
_, err = io.Copy(part, file)
if err != nil {
log.Fatal(err)
}
err = writer.Close()
if err != nil {
log.Fatal(err)
}
// 发送POST请求
req, err := http.NewRequest("POST", "https://ip:port/openapi/wts/file/v1/upload", body)
if err != nil {
log.Fatal(err)
}
req.Header.Set("Content-Type", writer.FormDataContentType())
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
log.Fatal(err)
}
defer resp.Body.Close()
// 解析响应
respBody, err := ioutil.ReadAll(resp.Body)
if err != nil {
log.Fatal(err)
}
var respData map[string]interface{}
err = json.Unmarshal(respBody, &respData)
if err != nil {
log.Fatal(err)
}
fmt.Println(respData)
}
注意替换实际的请求地址和文件路径
原文地址: https://www.cveoy.top/t/topic/fsUe 著作权归作者所有。请勿转载和采集!