1. ホーム
  2. java

Google Chromeのエラー「Not allowed to load local resource」の解決策について

2022-02-12 12:02:42
<パス

Google Chromeのエラー「Not allowed to load local resource」の解決法

画像をアップロードするバックエンド処理を行った後、画像をローカルに保存し、そのパスを取得して表示することができると考えました。
しかし、これはうまくいったのですが、ブラウザはNot allowed to load local resourceという前代未聞のエラーを報告しました。


百度(バイドゥ)が調べたところ、次のようなことがわかりました。
ページがサーバー上にある場合、ブラウザはセキュリティ上の理由から、htmlがローカルファイルにアクセスすることを許可しません。ブラウザがfile://で始まるローカルの画像を開くことを許可しないのです。

ページのhtmlファイルがローカルにある場合、例えばデスクトップ上のhtmlファイルをブラウザで開けば、ローカルの画像ファイルにアクセスすることができます。ただし、ルートディレクトリ以外のフォルダーにある画像にはアクセスできません。さもなければ、"not allowed to load local resource"というエラーが報告されます。

解決方法 tomcat 内の server.xml で仮想パスを設定します。

ステップ
1、Tomcatの設定ファイル(˶‾‾‾˵)をメモ帳で開く。(Tomcatをどこに置いたか忘れてしまった場合は、window-preference-fuzzyでTomcatを検索し、Tomcat 7.xを見つけると、右側にTomcatのパスがあります)
2. 2. < host > と < /host > の間に、以下のコードを追加します。[Context path="/file" docBase="E:\test" debug="0" reloadable="true"/>] を追加してください。
ここで、path はマップされたパス(データに格納されている相対パス)、docBase はファイルが置かれているパス(画像ローカルパス)です。
3. 上記2つの手順が完了したら、バックグラウンドで呼び出すことができます。
(具体的な方法は前回のブログ https://blog.csdn.net/weixin_44268320/article/details/89395936 をご覧ください)

成功ブラブラブラ!