这些 header 有什么区别?
Content-Type: application/javascript
Content-Type: application/x-javascript
Content-Type: text/javascript
哪个最好,为什么?
请不要说它们是相同的 - 如果它们相同,就不会有三个。我知道两者都有效 - 但我想知道它们的区别。
最佳答案
text/javascript
已过时,并且 application/x-javascript
在过渡时期是实验性的(因此有 x-
前缀),直到application/javascript
可以标准化。
您应该使用 application/javascript
。 这在 RFC 中有记录。 .
就浏览器而言,没有区别(至少在 HTTP header 中)。这只是一个更改,以便 text/*
和 application/*
MIME 类型组在可能的情况下具有一致的含义。 (text/*
MIME 类型旨在用于人类可读的内容,JavaScript 并非旨在直接向人类传达意义)。
请注意,在脚本元素的 type
属性中使用 application/javascript
会导致脚本在某些较旧的浏览器中被忽略(因为是未知语言) .要么继续使用 text/javascript
,要么完全省略该属性(这在 HTML 5 中是允许的)。
这在 HTTP header 中不是问题,因为浏览器普遍(据我所知)要么完全忽略脚本的 HTTP 内容类型,要么足够现代以识别 application/javascript
.
关于javascript - application/x-javascript 和 text/javascript 内容类型之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9664282/