探索Gin框架:Golang使用Gin完成文件上传
package main
import (
"fmt"
"github.com/gin-gonic/gin"
"net/http"
)
func main() {
router := gin.Default()
// 单文件上传
router.POST("/upload", func(c *gin.Context) {
// 单文件上传
file, err := c.FormFile("file")
if err != nil {
c.String(http.StatusBadRequest, fmt.Sprintf("上传文件错误: %s", err))
return
}
// 保存文件到服务器
if err := c.SaveUploadedFile(file, file.Filename); err != nil {
c.String(http.StatusBadRequest, fmt.Sprintf("保存文件错误: %s", err))
return
}
c.String(http.StatusOK, fmt.Sprintf("文件上传成功: %s", file.Filename))
})
// 服务运行在 8080 端口
router.Run(":8080")
}
这段代码演示了如何使用Gin框架来实现一个简单的文件上传功能。它定义了一个POST路由/upload
,用于接收名为file
的上传文件。代码中包含了错误处理,当上传的文件或操作过程中出现问题时,会返回相应的错误信息。最后,服务会在8080端口启动,等待文件上传的请求。
评论已关闭