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
})