HTTP FileServer MIME Type Mismatch
Apabila menggunakan http.FileServer untuk menyampaikan fail dengan jenis MIME tertentu, isu biasa timbul apabila pelayan bertindak balas dengan jenis MIME yang salah, seperti "teks/html" dan bukannya "audio/mpeg" yang dikehendaki untuk MP3 fail.
Untuk menyelesaikan isu ini, kita perlu mendalami pelaksanaan http.FileServer. Perisian tengah ini hanya mengambil semula fail daripada direktori yang ditentukan dan mengembalikannya sebagai respons HTTP. Walau bagaimanapun, ia tidak mempunyai kawalan eksplisit ke atas jenis MIME yang diberikan kepada respons.
Penyelesaian terletak pada mengubah suai corak pengendalian permintaan untuk http.FileServer. Dengan menambahkan garis miring mengekor pada corak, seperti ini:
http.Handle("/media/", http.StripPrefix("/media/", fs))
Kami pada asasnya mencipta pengendali subpokok berakar. Menurut dokumentasi net/http.ServeMux, corak yang lebih panjang diutamakan daripada yang lebih pendek. Dengan menambah garis miring, kami memastikan bahawa pengendali ini akan dipanggil khusus untuk permintaan dalam subpokok "/media/". Ini membolehkan kami menyediakan fail MP3 dengan jenis MIME yang betul.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membetulkan Respons Jenis MIME HTTP FileServer yang Salah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!