コンソールでこのエラーが発生するのはなぜですか?
MIMEタイプ( 'application / json')が実行可能でないため、' https://www.googleapis.com/customsearch/v1?key = API_KEY&q = flower&searchType = image&fileType = jpg&imgSize = small&alt = json'からのスクリプトの実行を拒否しました。厳密なMIMEタイプチェックが有効になっています。
コンソールでこのエラーが発生するのはなぜですか?
MIMEタイプ( 'application / json')が実行可能でないため、' https://www.googleapis.com/customsearch/v1?key = API_KEY&q = flower&searchType = image&fileType = jpg&imgSize = small&alt = json'からのスクリプトの実行を拒否しました。厳密なMIMEタイプチェックが有効になっています。
回答:
<script>
外部JavaScriptを読み込もうとしている要素があります。
指定したURLは、JavaScriptプログラムではなく、JSONファイルを指しています。
サーバーはそれがJSONであることを正しく報告しているため、ブラウザーはJSONをJavaScriptとして実行しようとするのではなく、そのエラーメッセージで中止します(エラーがスローされます)。
これの根本的な理由は、Ajaxリクエストを作成しようとしていて、クロスオリジンエラーが発生し、JSONPを使用していることをjQueryに通知して修正しようとしたことです。これは、URLがJSONP(JavaScriptの別のサブセット)を提供している場合にのみ機能しますが、これは提供していません。
callback=the_name_of_your_callback_function
ただし、クエリ文字列パラメータが追加された同じURLはJavaScriptを返します。
type="application/json"
—これで、ブラウザはJavaScriptを読み込もうとしていないことを認識したため、script要素を完全に無視します。
私の場合、ファイルが見つかりませんでした。javascriptファイルへのパスを間違って入力しました。
この結果はグーグルで最初にポップアップするものであり、ここで起こっていることよりも幅広いものです。以下は、Expressサーバーに適用されます。
ネストされたフォルダからリソースにアクセスしようとしていました。
中にindex.html
は
<script src="./script.js"></script>
静的ルートは次の場所にマウントされました:
app.use(express.static(__dirname));
しかし、script.js
中に配置され、ネストされたフォルダのように:js/myStaticApp/script.js
私はちょうどにスタティックルートを変更します:
app.use(express.static(path.join(__dirname, "js")));
今それは動作します:)
Node.jsを使用している場合は、express.static()を使用してみてください。
ファイルの直接提供を開始するには、静的アセットを保持するディレクトリの名前をexpress.staticミドルウェアに渡すだけです。たとえば、画像、CSS、JavaScriptファイルをpublicという名前のディレクトリに保存する場合、次のように実行できます。
すなわち:app.use(express.static( 'public'));
このアプローチで私の問題は解決しました。
ありがとう、
しばらく検索した後、Windows 1064ビットのこのエラーがJavaScriptに関連していることに気付きました。これを確認するには、ブラウザのDevToolsにアクセスして、最初に確認してください。私の場合、「MIMEタイプ( 'application / javascript')は実行可能ではありません」のようなエラーが表示されます。
その場合、私は解決策を見つけました。取引は次のとおりです。
私はしばらく前にまったく同じ問題を抱えていました。この問題はWindowsに固有のものだと思います。これは、JavaScriptファイルのWindowsレジストリに間違ったMIMEタイプが設定されていることが原因です。正しいコンテンツタイプでWindowsレジストリを編集することにより、問題を解決しました。
regedit-> HKEY_LOCAL_MACHINE \ Software \ Classes->ファイル拡張子ごとにたくさんのフォルダが表示されます->「。js」レジストリまで下にスクロールして選択します->「コンテンツタイプ」の値が以外の場合は右側にありますapplication / javascriptの場合、これが問題の原因です。コンテンツタイプを右クリックし、値をapplication / javascriptに変更します
ブラウザでもう一度お試しください。」
その後、エラーが変わることに気づきました。ブラウザで自動的に開くことすらなくなりました。ただし、PGAdminはサイドバー(カレンダー/時計の近く)で開きます。ブラウザで直接開こうとすると(「新しいPGAdmin 4ウィンドウ...」)、それも機能しません。
最終的な解決策:[サーバーのURLをコピー]をクリックして、ブラウザに貼り付けます。それは私のために働いた!
application/javascript
ために.js
拡張。次に、pgAdminを閉じて再度開くと、正常にロードされました(サーバーのURLをコピーせずに)。私は、Windows 8.1とPostgresSQLを13実行しています
Pythonフラスコ
上のWindowsは、HKCR / .jsファイルの「コンテンツタイプ」の値が適切なMIMEタイプに設定されていない場合、それはあなたの問題を引き起こす可能性がありますので、レジストリからのデータを使用しています。
regeditを開き、HKEY_CLASSES_ROOTに移動して、キー.js / ContentTypeの値がtext / javascriptであることを確認します。
C:\>reg query HKCR\.js /v "Content Type"
HKEY_CLASSES_ROOT\.js
Content Type REG_SZ text/javascript
以下に示すコードスニペットをエントリhtmlに追加します。つまり、reactjsの「index.html」
<div id="wrapper"></div>
<base href="/" />