Rumah > hujung hadapan web > tutorial js > Mengapa Saya Tidak Boleh Menetapkan Nilai Input Fail HTML kepada Laluan Fail Setempat?

Mengapa Saya Tidak Boleh Menetapkan Nilai Input Fail HTML kepada Laluan Fail Setempat?

Mary-Kate Olsen
Lepaskan: 2024-12-23 17:10:11
asal
333 orang telah melayarinya

Why Can't I Set the Value of an HTML File Input to a Local File Path?

Menetapkan Nilai untuk Input Fail dalam HTML

Input fail dalam HTML menyediakan cara yang mudah untuk pengguna memilih fail daripada sistem fail setempat mereka. Walau bagaimanapun, menetapkan nilai input fail kepada laluan sistem fail cakera sisi klien tidak mungkin disebabkan oleh pertimbangan keselamatan.

Bayangkan senario di mana anda mempunyai borang dengan input fail:

<input type="file" />
Salin selepas log masuk

Jika mungkin untuk menetapkan nilai input kepada laluan pada sistem fail pelanggan, tapak web berniat jahat boleh mengeksploitasi ini untuk mendapatkan akses kepada data sensitif pada pengguna komputer. Sebagai contoh, tapak web boleh membuat borang seperti ini:

<form name="foo" method="post" enctype="multipart/form-data">
    <input type="file" value="c:/passwords.txt">
</form>
<script>document.foo.submit();</script>
Salin selepas log masuk

Setelah menyerahkan borang, tapak web tersebut akan dapat mengakses fail passwords.txt pengguna. Untuk mengelakkan risiko keselamatan ini, penyemak imbas melarang menetapkan nilai input fail kepada laluan sistem fail setempat.

Satu-satunya cara untuk menetapkan nilai input fail ialah dengan menentukan sumber web yang boleh diakses secara umum, seperti yang ditunjukkan dalam contoh berikut :

<input type="file" value="https://example.com/image.png">
Salin selepas log masuk

Teknik ini berguna untuk memaparkan imej pratonton atau prapilih fail yang sudah tersedia dalam talian. Walau bagaimanapun, ia bukan pengganti untuk membenarkan pengguna memilih fail daripada sistem fail setempat mereka.

Atas ialah kandungan terperinci Mengapa Saya Tidak Boleh Menetapkan Nilai Input Fail HTML kepada Laluan Fail Setempat?. 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