Rumah > pembangunan bahagian belakang > Golang > Bagaimana Mengendalikan Muat Naik Fail dalam Pelayan Golang net/http?

Bagaimana Mengendalikan Muat Naik Fail dalam Pelayan Golang net/http?

Patricia Arquette
Lepaskan: 2024-12-09 19:12:25
asal
811 orang telah melayarinya

How to Handle File Uploads in a Golang net/http Server?

Cara Menerima Fail Yang Dimuat Naik Menggunakan Pelayan Golang net/http

Apabila cuba melaksanakan titik akhir muat naik fail mudah di Golang menggunakan Mux dan net/http, mendapatkan semula data fail daripada badan permintaan boleh menimbulkan cabaran. Penyelesaian berikut menangani isu ini:

import (
    "bytes"
    "fmt"
    "io"
    "net/http"
    "strings"
)

func ReceiveFile(w http.ResponseWriter, r *http.Request) {
    r.ParseMultipartForm(32 << 20) // limit your max input length!
    var buf bytes.Buffer
    file, header, err := r.FormFile("file") // replace "file" with the expected form field name
    if err != nil {
        panic(err)
    }
    defer file.Close()
    name := strings.Split(header.Filename, ".")
    fmt.Printf("File name %s\n", name[0])
    io.Copy(&buf, file)
    contents := buf.String()
    fmt.Println(contents)
    buf.Reset()
    return
}
Salin selepas log masuk

Fungsi ini:

  • Menghuraikan borang berbilang bahagian permintaan.
  • Mengambil semula fail yang dimuat naik daripada nama medan yang disediakan ( gantikan "fail" dengan nama medan sebenar anda).
  • Membaca kandungan fail ke dalam penimbal.
  • Mencetak nama fail ke konsol.
  • Menukar kandungan penimbal kepada rentetan.
  • Mencetak kandungan fail ke konsol.
  • Menetapkan semula penimbal untuk potensi penggunaan semula.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Muat Naik Fail dalam Pelayan Golang net/http?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan