Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mendapatkan Laluan Fail Tempatan Penuh daripada Input Fail Penyemak Imbas?

Bagaimanakah Saya Boleh Mendapatkan Laluan Fail Tempatan Penuh daripada Input Fail Penyemak Imbas?

Susan Sarandon
Susan Sarandonasal
2024-12-25 13:57:10702semak imbas

How Can I Get the Full Local File Path from a Browser File Input?

Mendapatkan Laluan Fail Tempatan Sebenar daripada Input Fail Penyemak Imbas

Penyemak imbas selalunya memaparkan fail yang dipilih melalui sebagai berasal dari "C:fakepath" atau lokasi palsu yang serupa. Langkah keselamatan ini menghalang skrip daripada mengakses laluan setempat sebenar, amalan yang boleh disalahgunakan untuk tujuan hasad.

Maklumat terhad ini boleh mengecewakan apabila pembangun memerlukan laluan setempat penuh untuk pemprosesan fail atau operasi lain. Walaupun tiada cara langsung untuk mendapatkan semula laluan sebenar dalam penyemak imbas moden, terdapat penyelesaian yang boleh memberikan perwakilan yang boleh diakses separa.

Untuk penyemak imbas berasaskan Mozilla (cth., Firefox), mengakses laluan penuh fail bukanlah mungkin. Penyemak imbas hanya akan memaparkan nama fail sebagai "test.csv" dalam elemen yang ditentukan.

Walau bagaimanapun, dalam penyemak imbas lain, pembangun boleh menggunakan sifat webkitRelativePath (pelayar berasaskan WebKit seperti Chrome) atau sifat mozFullPath (pra -Firefox 69) untuk mendapatkan perwakilan laluan setempat separa.

Berikut ialah contoh untuk Chrome:

`

 document.querySelector('input[type=file]').addEventListener('change', function() {</p><pre class="brush:php;toolbar:false">console.log(this.files[0].webkitRelativePath);

});

`

Kod ini akan log a laluan seperti "Documents/test.csv", yang bukan laluan penuh tetapi menyediakan perwakilan yang lebih bermaklumat daripada "C:fakepath".

Perlu ambil perhatian bahawa penyelesaian ini mungkin tidak tersedia dalam semua penyemak imbas atau mungkin mempunyai sekatan keselamatan. Oleh itu, adalah penting untuk mempertimbangkan implikasi keselamatan untuk mengakses laluan fail dan mematuhi garis panduan keselamatan penyemak imbas semasa membangunkan aplikasi web.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mendapatkan Laluan Fail Tempatan Penuh daripada Input Fail Penyemak Imbas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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