簡介
在本文中,我們將解決使用Mux 函式庫在Go net/http 伺服器中接收上傳檔案的問題。我們將提供全面的解決方案,並逐步完成檢索和處理文件上傳的必要步驟。
解決方案
要將上傳的檔案作為多部分錶單資料檢索,我們可以利用r.ParseMultipartForm() 方法,它將HTTP 請求解析為方便的資料結構。我們將使用此方法從請求中提取上傳的文件及其相關資訊。
這是UploadFile 函數的更新版本:
func UploadFile(w http.ResponseWriter, r *http.Request) { err := r.ParseMultipartForm(5 * 1024 * 1024) if err != nil { panic(err) } // Retrieve the uploaded file file, header, err := r.FormFile("fileupload") if err != nil { panic(err) } defer file.Close() // Get the file's name and extension name := strings.Split(header.Filename, ".") // Read the file's contents into a buffer buf := new(bytes.Buffer) io.Copy(buf, file) // Do something with the file's contents... // ... // Reset the buffer for future use buf.Reset() }
附加說明
透過此解決方案,您可以使用 Mux 在 Go net/http 伺服器中有效地接收和處理文件上傳。
以上是如何使用 Mux 在 Go Net/HTTP 伺服器中接收檔案上傳?的詳細內容。更多資訊請關注PHP中文網其他相關文章!