Wysyłanie pliku

Aby obsłużyć wysyłanie pliku w ramach frameworku Go Fiber, można skorzystać z funkcji FormFile obiektu context. Sygnatura funkcji jest następująca:

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

Oto przykład wysyłania pliku:

app.Post("/", func(c *fiber.Ctx) error {
  // Odczytaj plik za pomocą klucza dokumentu, a nagłówek wysyłanego pliku musi znajdować się w formacie multipart/form-data
  file, err := c.FormFile("document")

  // Zapisz plik do określonego katalogu
  return c.SaveFile(file, fmt.Sprintf("./%s", file.Filename))
})

Pobieranie pliku

Aby obsłużyć pobieranie pliku w Go Fiber, można skorzystać z funkcji Download, jak pokazano poniżej:

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

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