بارگذاری فایل

برای رسیدگی به بارگذاری فایل در چارچوب Go Fiber، می‌توانید از تابع FormFile شیء context استفاده کنید. امضای این تابع به صورت زیر است:

func (c *Ctx) FormFile(key string) (*multipart.FileHeader, error)

در ادامه مثالی از بارگذاری فایل آورده شده است:

app.Post("/", func(c *fiber.Ctx) error {
  // با استفاده از کلید سند، فایل را خوانده و هدر بارگذاری فایل باید در فرمت multipart/form-data باشد
  file, err := c.FormFile("document")

  // فایل را در دایرکتوری مشخص شده ذخیره می‌کند
  return c.SaveFile(file, fmt.Sprintf("./%s", file.Filename))
})

دانلود فایل

برای رسیدگی به دانلود فایل در Go Fiber، می‌توانید از تابع Download به شکل زیر استفاده کنید:

app.Get("/", func(c *fiber.Ctx) error {
  return c.Download("./files/report-12345.pdf")
  // => دانلود report-12345.pdf

  return c.Download("./files/report-12345.pdf", "report.pdf")
  // => دانلود report.pdf
})