2 回答

TA貢獻(xiàn)1812條經(jīng)驗 獲得超5個贊
您可以使用編碼,例如form-data
,其中包括文件名以使用郵遞員上傳文件。這將幫助您向服務(wù)器發(fā)送multipart/form-data
請求。之后,您可以從服務(wù)器端提取文件名。
從服務(wù)器端
func uploadData(w http.ResponseWriter, req *http.Request) {
_, header, _ := req.FormFile("demo")
fmt.Println(header.Filename)
}

TA貢獻(xiàn)1816條經(jīng)驗 獲得超6個贊
因為,沒有與 HTTP 請求正文關(guān)聯(lián)的文件名。如果要獲取文件名,則必須在 URL 中發(fā)送文件名。
package main
import (
"net/http"
"os"
"io"
"log"
"github.com/gorilla/mux"
)
func uploadData(w http.ResponseWriter, req *http.Request) {
params := mux.Vars(req)
file, err := os.Create(params["fileName"])
_, err = io.Copy(file, req.Body)
if err!=nil{
log.Printf("Error while Posting data")
}
}
func main(){
router := mux.NewRouter()
router.HandleFunc("/upload/{fileName}", uploadData).Methods("POST")
log.Fatal(http.ListenAndServe(":8000", router))
}
- 2 回答
- 0 關(guān)注
- 227 瀏覽
添加回答
舉報