首頁 >web前端 >js教程 >為什麼無法將 HTML 檔案輸入的值設定為本機檔案路徑?

為什麼無法將 HTML 檔案輸入的值設定為本機檔案路徑?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-23 17:10:11340瀏覽

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

設定HTML 中的檔案輸入的值

HTML 中的檔案輸入為使用者提供了從本機檔案系統選擇檔案的便捷方法。但是,出於安全考慮,將文件輸入的值設定為客戶端磁碟檔案系統路徑是不可能的。

想像一個場景,其中您有一個帶有檔案輸入的表單:

<input type="file" />

如果可以將輸入的值設定為客戶端檔案系統上的路徑,惡意網站就可以利用它來存取用戶電腦上的敏感資料。例如,網站可以建立以下表單:

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

提交表單後,網站將能夠存取使用者的passwords.txt 檔案。為了防止這種安全風險,瀏覽器禁止將檔案輸入值設定為本機檔案系統路徑。

設定檔案輸入值的唯一方法是指定可公開存取的Web 資源,如以下範例所示:

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

此技術對於顯示預覽影像或預選已線上可用的文件非常有用。但是,它並不能取代允許使用者從本機檔案系統中選擇檔案。

以上是為什麼無法將 HTML 檔案輸入的值設定為本機檔案路徑?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn