Javascript MIME类型

基于这个问题:jQuery代码不能在IE中工作

所以在HTML文档中使用了text/javascript ,因此Internet Explorer可以理解它。 但我想知道,你什么时候会使用application/javascript ,更重要的是,你为什么要用它来代替text/javascript


理论上,根据RFC 4329, application/javascript

它应该是application的原因与该类型是否可读或可执行无关。 这是因为有语言/类型本身定义的自定义字符集确定机制,而不仅仅是泛型charset参数。 text的子类型应该能够被代理转码为另一个字符集,从而改变字符集参数。 这不是JavaScript的原因,因为:

一个。 RFC表示用户代理应该在脚本上进行材料清单嗅探以确定类型(我不确定是否有浏览器实际执行此操作);

湾 浏览器使用其他信息(包括页面的编码和某些浏览器中的script charset属性)来确定字符集。 因此,任何尝试转码资源的代理都会破坏其用户。 (当然,实际上从来没有人使用代码转换代理,但那是意图。)

因此,文件的确切字节必须完全保留,这使其成为二进制application类型,而不是技术上基于字符的text

出于同样的原因, application/xml正式优于text/xml :XML具有自己的带内charset信号机制。 而且每个人都忽略了XML的application

text/javascripttext/xml可能不是官方的正确事物,但是出于兼容性的原因,今天每个人都使用它,而他们不是正确的原因实际上完全不重要。


Javascript的MIME类型的问题是多年来一直没有标准。 现在我们已经有了application / javascript作为官方的MIME类型。

但实际上,MIME类型根本无关紧要,因为浏览器可以自行确定类型。 这就是为什么HTML5规范声明不再需要type="text/javascript"原因。


application因为.js文件不是用户想要读取的内容,而是应执行的内容。

链接地址: http://www.djcxy.com/p/47089.html

上一篇: Javascript MIME Type

下一篇: How to tar while excluding a combination of files and directories