summaryrefslogtreecommitdiffstats
path: root/vendor/github.com/labstack/echo/cookbook/file-upload/single
diff options
context:
space:
mode:
authorWim <wim@42.be>2017-02-18 23:00:46 +0100
committerWim <wim@42.be>2017-02-18 23:11:48 +0100
commit930b639cc9cd2d2873302f30303378c0e53816a8 (patch)
tree8cd3f1d464fb5d4e5607fe16255c35a31a9d8b62 /vendor/github.com/labstack/echo/cookbook/file-upload/single
parent58483ea70c2c99a352592c5e50686fb03985650e (diff)
downloadmatterbridge-msglm-930b639cc9cd2d2873302f30303378c0e53816a8.tar.gz
matterbridge-msglm-930b639cc9cd2d2873302f30303378c0e53816a8.tar.bz2
matterbridge-msglm-930b639cc9cd2d2873302f30303378c0e53816a8.zip
Update vendor
Diffstat (limited to 'vendor/github.com/labstack/echo/cookbook/file-upload/single')
-rw-r--r--vendor/github.com/labstack/echo/cookbook/file-upload/single/server.go59
1 files changed, 59 insertions, 0 deletions
diff --git a/vendor/github.com/labstack/echo/cookbook/file-upload/single/server.go b/vendor/github.com/labstack/echo/cookbook/file-upload/single/server.go
new file mode 100644
index 00000000..1b84f220
--- /dev/null
+++ b/vendor/github.com/labstack/echo/cookbook/file-upload/single/server.go
@@ -0,0 +1,59 @@
+package main
+
+import (
+ "fmt"
+ "io"
+ "os"
+
+ "net/http"
+
+ "github.com/labstack/echo"
+ "github.com/labstack/echo/middleware"
+)
+
+func upload(c echo.Context) error {
+ // Read form fields
+ name := c.FormValue("name")
+ email := c.FormValue("email")
+
+ //-----------
+ // Read file
+ //-----------
+
+ // Source
+ file, err := c.FormFile("file")
+ if err != nil {
+ return err
+ }
+ src, err := file.Open()
+ if err != nil {
+ return err
+ }
+ defer src.Close()
+
+ // Destination
+ dst, err := os.Create(file.Filename)
+ if err != nil {
+ return err
+ }
+ defer dst.Close()
+
+ // Copy
+ if _, err = io.Copy(dst, src); err != nil {
+ return err
+ }
+
+ return c.HTML(http.StatusOK, fmt.Sprintf("<p>File %s uploaded successfully with fields name=%s and email=%s.</p>", file.Filename, name, email))
+}
+
+func main() {
+ e := echo.New()
+
+ e.Use(middleware.Logger())
+ e.Use(middleware.Recover())
+
+ e.Static("/", "public")
+ e.POST("/upload", upload)
+
+ e.Logger.Fatal(e.Start(":1323"))
+}