小编典典

什么时候使用JavaScript MIME类型application / javascript而不是text / javascript?

javascript

什么时候使用application/javascript,更重要的是,为什么要使用它而不是text/javascript


阅读 434

收藏
2020-05-01

共1个答案

小编典典

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

假定的原因application与该类型是可读还是可执行无关。这是因为语言/类型本身(而非通用charset参数)规定了自定义字符集确定机制。的子类型text应该能够通过代理更改为另一个字符集,从而更改charset参数。JavaScript并非如此,因为:

一个。RFC表示用户代理应在脚本上进行BOM嗅探以确定类型(不过我不确定是否有任何浏览器确实这样做);

b。浏览器使用其他信息(包括页面的编码以及 某些 浏览器中的script charset属性)来确定字符集。因此,任何尝试对资源进行转码的代理都将破坏其用户。(当然,实际上,没有人会使用转码代理,但这是目的。)

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

出于同样的原因,application/xml正式优于text/xml:XML具有自己的带内字符集信令机制。每个人也都忽略applicationXML。

text/javascripttext/xml未必是官方的正确的事情,但有什么用大家今天兼容性的原因,为什么他们不正确的事情的原因是实际地说完全不重要。

2020-05-01