ホームページ >ウェブフロントエンド >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" />

入力値をクライアントのファイル システム上のパスに設定できる場合、悪意のある Web サイトがこれを悪用して、ユーザーのコンピュータ上の機密データにアクセスする可能性があります。たとえば、Web サイトは次のようなフォームを作成できます:

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

フォームを送信すると、Web サイトはユーザーのpasswords.txt ファイルにアクセスできるようになります。このセキュリティ リスクを防ぐために、ブラウザではファイル入力値をローカル ファイル システム パスに設定することを禁止しています。

ファイル入力値を設定する唯一の方法は、次の例に示すように、パブリックにアクセス可能な Web リソースを指定することです。 :

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

このテクニックは、プレビュー画像を表示したり、オンラインですでに利用可能なファイルを事前に選択したりする場合に便利です。ただし、これは、ユーザーがローカル ファイル システムからファイルを選択できるようにする代わりにはなりません。

以上がHTML ファイル入力の値をローカル ファイル パスに設定できないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。