可以使用Go语言的标准库net/http中的Get方法获取远程图片的内容,然后将内容写入本地文件中。

示例代码如下:

package main

import (
    "net/http"
    "os"

    "github.com/gin-gonic/gin"
)

func main() {
    router := gin.Default()

    router.GET("/download", func(c *gin.Context) {
        url := c.Query("url") // 获取图片的URL

        // 发起HTTP GET请求获取图片内容
        resp, err := http.Get(url)
        if err != nil {
            c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
            return
        }
        defer resp.Body.Close()

        // 创建本地文件并写入图片内容
        file, err := os.Create("image.jpg")
        if err != nil {
            c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
            return
        }
        defer file.Close()

        _, err = io.Copy(file, resp.Body)
        if err != nil {
            c.JSON(http.StatusBadRequest, gin.H{"error": err.Error()})
            return
        }

        c.JSON(http.StatusOK, gin.H{"message": "Download successful"})
    })

    router.Run(":8080")
}

在上面的示例代码中,我们创建了一个/download的路由,可以接受一个名为url的查询参数,用于指定要下载的远程图片的URL。在路由处理函数中,我们使用http.Get方法获取远程图片的内容,并将内容写入本地文件中。最后返回一个JSON响应告诉客户端下载成功。

注意,上面的示例代码中省略了一些错误处理逻辑,实际使用时应该根据具体情况进行完善。

golang gin 框架 获取远程网络图片url 下载到本地文件夹

原文地址: https://www.cveoy.top/t/topic/m88 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录