Caricamento file

Per gestire il caricamento di file nel framework Go Fiber, è possibile utilizzare la funzione FormFile dell'oggetto contesto. La firma della funzione è la seguente:

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

Ecco un esempio di caricamento file:

app.Post("/", func(c *fiber.Ctx) error {
  // Leggi il file tramite la chiave del documento e l'intestazione di caricamento del file deve essere nel formato multipart/form-data
  file, err := c.FormFile("document")

  // Salva il file nella directory specificata
  return c.SaveFile(file, fmt.Sprintf("./%s", file.Filename))
})

Scaricamento file

Per gestire il download di file in Go Fiber, è possibile utilizzare la funzione Download come mostrato di seguito:

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

  return c.Download("./files/report-12345.pdf", "report.pdf")
  // => Scarica report.pdf
})