[解決済み] JavaScriptのMIMEタイプでtext/javascriptの代わりにapplication/javascriptを使用するのはどのような場合ですか?
質問
質問に基づく
IEでjQueryのコードが動作しない
,
text/javascript
は、Internet Explorerが理解できるように、HTML文書で使用されています。
でも、気になるのは、どんなときに
application/javascript
の代わりに、なぜこれを使うのでしょうか?
text/javascript
?
解決方法は?
によると、理論的には
RFC 4329
,
application/javascript
.
とされているのは
application
は、その型が読み取り可能か実行可能かとは関係ありません。それは、言語や型そのものが、単に一般的な
charset
パラメータを使用します。のサブタイプは
text
は、プロキシがcharsetパラメータを変更することで、別の文字セットにトランスコードできるようにする必要があります。これはJavaScriptには当てはまらないからです。
a. RFCは、ユーザーエージェントがスクリプトのBOM-sniffingを行って型を決定すべきであると言っています(しかし、実際にこれを行うブラウザがあるかどうかはわかりません)。
b. ブラウザは他の情報、つまりページのエンコーディングや、(1) (2) (3) (4) (5) (6)を含む情報を利用します。
一部
ブラウザは
script charset
属性を使って文字セットを決定します。ですから、リソースをトランスコードしようとするプロキシは、そのユーザーを壊してしまうことになります。(もちろん、現実には誰もトランスコードするプロキシを使うことはありませんが、これは意図したものです)。
したがって、ファイルの正確なバイト数は保持されなければなりません。
まさに
であるため、バイナリ
application
型であり、技術的には文字ベースではなく
text
.
同じ理由で
application/xml
よりも公式に優先されます。
text/xml
: XML には独自の帯域内文字セット信号の仕組みがあります。そして、誰もが
application
もXMLの場合です。
text/javascript
と
text/xml
は公式な正しいことではありませんが、互換性のために今日みんなが使っているものであり、正しいことでない理由は実質的に全く重要ではありません。
関連
-
fetch ネットワークリクエストラッパーの説明例
-
[解決済み】 Uncaught TypeError : undefined のプロパティ 'replace' を読み取れない In Grid
-
[解決済み] 正しいJSONコンテンツタイプは何ですか?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] JavaScriptでオブジェクトをディープクローンする最も効率的な方法は何ですか?
-
[解決済み] とは何ですか! (not not)演算子とは何ですか?
-
[解決済み] 私のJavaScriptコードは "No 'Access-Control-Allow-Origin' header is present on requested resource "というエラーを受け取りますが、Postmanはそうならないのはなぜですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] HTMLマークアップのどこに<script>タグを記述すればよいですか?
-
[解決済み] varキーワードの目的と、どのような場合に使用する(または省略する)べきですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Vueにシンプルなメモ帳機能を実装
-
[解決済み】Node.jsで "Cannot find module "エラーを解決するには?
-
[解決済み】Node.js Error: Cannot find module express
-
[解決済み] TypeError: $.ajax(...) is not a function?
-
[解決済み】 `string.split is not a function` というエラーの原因は何ですか?
-
[解決済み】リクエストに失敗していないのに、「TypeError: failed to fetch」が表示される。
-
フロントエンド null のプロパティ 'disabled' を読み取れない 問題が解決された
-
JSクリックイベント - Uncaught TypeError: プロパティ 'onclick' に null を設定できません。
-
モジュールのビルドに失敗しました。Error: ENOENT: no such file or directory, scandir 'D:\.... \node_modules
-
jq は html ページとデータを動的に分割する。