主頁 > 知識庫 > 用go gin server來做文件上傳服務(wù)

用go gin server來做文件上傳服務(wù)

熱門標(biāo)簽:中國地圖標(biāo)注省會高清 西部云谷一期地圖標(biāo)注 南通如皋申請開通400電話 高德地圖標(biāo)注口訣 江西轉(zhuǎn)化率高的羿智云外呼系統(tǒng) 浙江高速公路地圖標(biāo)注 廣州呼叫中心外呼系統(tǒng) 地圖標(biāo)注的汽車標(biāo) 學(xué)海導(dǎo)航地圖標(biāo)注

之前已經(jīng)go get安裝了gin, 現(xiàn)在來玩下用go gin server作圖片上傳服務(wù), 代碼目錄如下:

taoge:~/test_gin$ tree
.
|-- public
|-- template
|  `-- select_file.html
`-- test_gin_server.go
2 directories, 2 files
taoge:~/test_gin$ 

test_gin_server.go內(nèi)容:

package main
import (
  "fmt"
  "io"
  "log"
  "net/http"
  "os"
  "github.com/gin-gonic/gin"
)
func upload(c *gin.Context) {
  file, header, err := c.Request.FormFile("file") 
  if err != nil {
    c.String(http.StatusBadRequest, fmt.Sprintf("file err : %s", err.Error()))
    return
  }
  filename := header.Filename
  out, err := os.Create("public/" + filename)
  if err != nil {
    log.Fatal(err)
  }
  defer out.Close()
  _, err = io.Copy(out, file)
  if err != nil {
    log.Fatal(err)
  }
  filepath := "http://localhost:8080/file/" + filename
  c.JSON(http.StatusOK, gin.H{"filepath": filepath})
}
func main() {
  router := gin.Default()
  router.LoadHTMLGlob("template/*")
  router.GET("/", func(c *gin.Context) {
    c.HTML(http.StatusOK, "select_file.html", gin.H{})
  })
  router.POST("/upload", upload)
  router.StaticFS("/file", http.Dir("public"))
  router.Run(":8080")
}

select_file.html的內(nèi)容為:

html>
body>
  form action="http://localhost:8080/upload/" enctype="multipart/form-data" method="POST"> 
    input type="file" name="file" id="pic" accept="*" />
    button type="submit">提交/button>
  /form>
/body>
/html>

go run test_gin_server.go跑起來, 在瀏覽器上執(zhí)行:http://localhost:8080/ ,然后就出現(xiàn)了圖片上傳的頁面,于是就可以上傳圖片了, 玩了一下, OK,服務(wù)端對應(yīng)的public目錄中有對應(yīng)的圖片。

不多說。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接

您可能感興趣的文章:
  • Go Gin實(shí)現(xiàn)文件上傳下載的示例代碼

標(biāo)簽:德宏 許昌 保定 曲靖 東營 貴州 吐魯番 常州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《用go gin server來做文件上傳服務(wù)》,本文關(guān)鍵詞  用,gin,server,來做,文件,上傳,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《用go gin server來做文件上傳服務(wù)》相關(guān)的同類信息!
  • 本頁收集關(guān)于用go gin server來做文件上傳服務(wù)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章