Bagaimana untuk Menyelesaikan Ralat Sempadan Berbilang Bahagian dalam Muat Naik Fail Menggunakan Ajax XMLHttpRequest?

DDD
Lepaskan: 2024-10-18 16:42:08
asal
303 orang telah melayarinya

How to Resolve the Multipart Boundary Error in File Uploads Using Ajax XMLHttpRequest?

Muat Naik Fail Menggunakan Ajax XMLHttpRequest: Menyelesaikan Ralat Sempadan Berbilang Bahagian

Dalam percubaan untuk memindahkan fail menggunakan XMLHttpRequest, anda mungkin menghadapi ralat berikut:

The request was rejected because no multipart boundary was found.
Salin selepas log masuk

Ralat ini menandakan bahawa kod anda tidak mempunyai pendekatan yang betul untuk mengendalikan data borang berbilang bahagian. Untuk membetulkan isu ini, mari kita menangani dua bidang utama:

  1. Sifat fail XHR: Baris xhr.file = fail; adalah berlebihan. Objek fail tidak boleh ditetapkan dengan cara ini.
  2. Penghantaran Fail: Mengubah suai xhr.send(file); tidak akan memindahkan fail dengan berkesan. Sebaliknya, gunakan objek FormData untuk membina muatan berbilang bahagian/form-data:
var formData = new FormData();
formData.append("thefile", file);
xhr.send(formData);
Salin selepas log masuk

Dengan menggunakan FormData, fail boleh diakses melalui pembolehubah PHP $_FILES['thefile'].

Ingat untuk merujuk dokumentasi dan tunjuk cara daripada MDC dan Mozilla Hack untuk panduan lanjut mengenai topik ini.

Cadangan Salah Sebelum ini:

Jawapan sebelumnya salah menyatakan bahawa xhr.send(fail); menghantar data pos mentah. Walaupun ia menghantar fail, adalah penting untuk menggunakan FormData untuk memastikan penghuraian yang betul pada pelayan. Oleh itu, pembetulan di atas adalah penting untuk mencapai kefungsian yang diingini.

Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat Sempadan Berbilang Bahagian dalam Muat Naik Fail Menggunakan Ajax XMLHttpRequest?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!