Subida de archivos

Para manejar la subida de archivos en el marco de trabajo Go Fiber, puedes utilizar la función FormFile del objeto contexto. La firma de la función es la siguiente:

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

Aquí tienes un ejemplo de subida de archivo:

app.Post("/", func(c *fiber.Ctx) error {
  // Leer el archivo a través de la clave del documento, y el encabezado de subida de archivo debe estar en el formato multipart/form-data
  file, err := c.FormFile("document")

  // Guardar el archivo en el directorio especificado
  return c.SaveFile(file, fmt.Sprintf("./%s", file.Filename))
})

Descarga de archivos

Para manejar la descarga de archivos en Go Fiber, puedes utilizar la función Download de la siguiente manera:

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

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