main.go 813 B

1234567891011121314151617181920212223242526272829303132333435
  1. package main
  2. import (
  3. "fmt"
  4. "net/http"
  5. "github.com/gin-gonic/gin"
  6. )
  7. func main() {
  8. router := gin.Default()
  9. router.Static("/", "./public")
  10. router.POST("/upload", func(c *gin.Context) {
  11. name := c.PostForm("name")
  12. email := c.PostForm("email")
  13. // Multipart form
  14. form, err := c.MultipartForm()
  15. if err != nil {
  16. c.String(http.StatusBadRequest, fmt.Sprintf("get form err: %s", err.Error()))
  17. return
  18. }
  19. files := form.File["files"]
  20. for _, file := range files {
  21. if err := c.SaveUploadedFile(file, file.Filename); err != nil {
  22. c.String(http.StatusBadRequest, fmt.Sprintf("upload file err: %s", err.Error()))
  23. return
  24. }
  25. }
  26. c.String(http.StatusOK, fmt.Sprintf("Uploaded successfully %d files with fields name=%s and email=%s.", len(files), name, email))
  27. })
  28. router.Run(":8080")
  29. }