post请求发送json数据--用client

发布时间 2023-11-22 15:19:47作者: no-i-can
// post请求发送json数据--用client
func testPostForClient() {
    client := &http.Client{}

    url := "http://xxxxxx.local:1080/xxx/external/service" //post请求地址

    //post请求体Body
    data := make(map[string]interface{})
 
    data["serviceCode"] = "xx_xx_ORDER_SERVICE"
    data["digest"] = "eQUWdMVmbKoA7aI1HJg9Yg%3D%3D"
    data["dataSource"] = "xxxxx"
    data["requestId"] = nil

    bytesData, _ := json.Marshal(data)

    //post请求
    req, err := http.NewRequest("POST", url, bytes.NewReader(bytesData))

    //post请求头
    req.Header.Set("Authorization", "Basic dGVzdDpzZjEyMzQ1Ng==")
    req.Header.Set("Content-Type", "application/json")

    resp, err := client.Do(req)
    if err != nil {
        return
    }

    defer resp.Body.Close()

    body, err := io.Copy(os.Stdout, resp.Body)
    if err != nil {
        return
    }

    bodyString := string(body)
    fmt.Println("Response Body:", bodyString)
}