本章介绍Go Fiber框架如何处理文件上传和文件下载
文件上传
通过上下文对象的FormFile函数读取文件,函数签名如下:func (c *Ctx) FormFile(key string) (*multipart.FileHeader, error)`
文件上传例子
app.Post("/", func(c *fiber.Ctx) error {
// 通过document读取文件, 文件上传头必须是multipart/form-data格式
file, err := c.FormFile("document")
// 将文件保存到指定目录
return c.SaveFile(file, fmt.Sprintf("./%s", file.Filename))
})
文件下载
app.Get("/", func(c *fiber.Ctx) error {
return c.Download("./files/report-12345.pdf");
// => Download report-12345.pdf
return c.Download("./files/report-12345.pdf", "report.pdf");
// => Download report.pdf
})