파일 업로드

Go Fiber 프레임워크에서 파일 업로드를 처리하려면 컨텍스트 객체의 FormFile 함수를 사용할 수 있습니다. 함수 시그니처는 다음과 같습니다:

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

다음은 파일 업로드의 예시입니다:

app.Post("/", func(c *fiber.Ctx) error {
  // document 키를 통해 파일을 읽고, 파일 업로드 헤더는 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 다운로드
})