我可以做类似下面的事情,这给了我一个响应类,但我不确定如何将io.reader写入文件.什么是最直接的方式?
http.Get("https://www.domain.com/some.jpg")
Run Code Online (Sandbox Code Playgroud)
如果文件足够小,最简单的解决方案是使用ioutil.WriteFile与ioutil.ReadAll结合使用 :
resp, err := http.Get("your url")
bytes, err := ioutil.ReadAll(resp.Body)
err = ioutil.WriteFile(filename, bytes, 0666)
Run Code Online (Sandbox Code Playgroud)
如果您的文件不是那么小,最好避免创建和填充bytes数组.然后你应该使用io.Copy,它只是将读者的字节复制到编写器:
resp, err := http.Get("your url")
f, err := os.Create(filename)
defer f.Close()
_, err := io.Copy(f, resp.Body)
Run Code Online (Sandbox Code Playgroud)
您必须在两种情况下都添加相关的错误处理.
| 归档时间: |
|
| 查看次数: |
115 次 |
| 最近记录: |