Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Membaca Fail Teks Tempatan dalam Pelayar Web?
Apabila cuba melaksanakan pembaca fail teks ringkas menggunakan XMLHttpRequest, ia mungkin tidak berfungsi dengan betul. Artikel ini meneroka isu yang berpotensi dan menyediakan penyelesaian untuk membetulkannya.
Apabila permintaan XMLHttpRequest dibuat dengan laluan fail setempat, ia mungkin menghasilkan Exception 101. Ini berlaku kerana pelayar moden mengehadkan akses sistem fail langsung dengan ketat. Untuk memintas perkara ini, elakkan menggunakan laluan fail:///.
Pendekatan yang lebih moden dan mesra pengguna untuk mendapatkan semula data daripada URL ialah API Ambil, diperkenalkan dalam JS. Kod berikut menunjukkan penggunaannya:
fetch("myText.txt") .then((res) => res.text()) .then((text) => { // Process the text }) .catch((e) => console.error(e));
Untuk permintaan fail tempatan menggunakan XMLHttpRequest, anda perlu menyemak kedua-dua status 0 dan 200 kerana status tidak dikembalikan daripada pelayan web:
function readTextFile(file) { var rawFile = new XMLHttpRequest(); rawFile.open("GET", file, false); rawFile.onreadystatechange = function () { if(rawFile.readyState === 4) { if(rawFile.status === 200 || rawFile.status == 0) { var allText = rawFile.responseText; console.log(allText); } } } rawFile.send(null); }
Apabila menggunakan XMLHttpRequest dengan fail tempatan, adalah penting untuk menentukan fail:// protokol dalam nama fail:
readTextFile("file:///C:/your/path/to/file.txt");
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Membaca Fail Teks Tempatan dalam Pelayar Web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!