亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 golang Rest api 將文件或圖像路徑 url 返回到 forntend?

如何使用 golang Rest api 將文件或圖像路徑 url 返回到 forntend?

Go
精慕HU 2023-07-17 14:38:43
我的后端使用 Golang(gin-gonic 框架)。我開發了下面的 REST API 來從前端應用程序接收圖像或文件。我將文件保存在這個路徑“/home/user/Desktop/files/”+dt.String()+“_”+filepath.Base(file.Filename)中。到目前為止一切都很好,我可以看到保存的文件?,F在我計劃通過另一個rest API(例如:API:/getImageUrl,響應: https: //via.placeholder.com/600/771796)將這些文件路徑返回到前端,以便用戶可以下載文件。但我不知道如何將這些文件路徑 URL 返回到前端。有人可以指導我如何開發這個 REST API 嗎?               requests.POST("/upload", func(c *gin.Context) {                    // Source                    file, err := c.FormFile("file")                    if err != nil {                        c.String(http.StatusBadRequest, fmt.Sprintf("get form err: %s", err.Error()))                        return                    }                    dt := time.Now()                    filename := "/home/user/Desktop/files/"+dt.String()+"_"+filepath.Base(file.Filename)                    if err := c.SaveUploadedFile(file, filename); err != nil {                        c.String(http.StatusBadRequest, fmt.Sprintf("upload file err: %s", err.Error()))                        return                    }                    c.JSON(200, gin.H{"message": "Files Uploaded Successfully"})                }) 
查看完整描述

1 回答

?
森林海

TA貢獻2011條經驗 獲得超2個贊

首先,您應該將圖像名稱存儲在數據庫中。

要在 gin 中提供靜態資源(圖像文件),您必須定義靜態路由。

router?:=?gin.Default()
router.Static("/image",?"./path-to-image-dir")

文件路徑看起來像這樣

http://myapp.com/image/filename.jpg

但我建議您使用自定義標頭來使用bind-header方法提供圖像內容,這樣您將擁有更多控制權。


查看完整回答
反對 回復 2023-07-17
  • 1 回答
  • 0 關注
  • 133 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號