doupao2277
doupao2277
2019-08-09 10:56

如何上传作为第三方API响应的文件

I am new to Go Programming. I need to upload a file which I am getting from a third party API.

I am getting response as a PDF file from third party API. Now I want to upload this PDF file to a folder. I am not understanding how I can upload that PDF file and not getting any reference.

url := "https://api.xyz.com/v3/files/fcc280cf620204d4bb5dbd6a8cbbbb8fea1a20fc"
client := &http.Client{}
req, err := http.NewRequest("GET", url, nil)
if err != nil {
    fmt.Println("Failed")
}
req.Header.Set("Content-Type", "application/json")
req.SetBasicAuth("xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", "")
resp, err := client.Do(req)
if err != nil {
    fmt.Println("ERROR")
}
fmt.Println(resp) // here I am getting pdf file
defer resp.Body.Close()

Please suggest me some reference or some sample code. I am working on this since last few days to complete this task.

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • dosin84644 dosin84644 2年前

    It's pretty simple. First, create and open a file using os.Create.

    out, err := os.Create("filename.pdf)
    if err != nil {
        return err
    }
    defer out.Close()
    

    Next, use io.Copy() to download the content.

    _, err = io.Copy(out, resp.Body)
    

    You can take a look at this for reference.

    点赞 评论 复制链接分享

为你推荐