当前位置: 首页 > 面试题库 >

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

邵耀
2023-03-14
问题内容

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


问题答案:

从理论上讲,根据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未必是官方的正确的事情,但有什么用大家今天兼容性的原因,为什么他们不正确的事情的原因是实际地说完全不重要。



 类似资料:
  • 问题内容: 编码要发送到Web服务器的查询字符串时-您何时使用以及何时使用或: 使用转义: 要么 使用encodeURI()/ encodeURIComponent() 问题答案: escape() 不要使用它! 在B.2.1.2节中定义了转义,并且附件B的引言中指出: …本附件中指定的所有语言功能和行为均具有一个或多个不良特征,在没有遗留用法的情况下,将从本规范中删除。… …程序员不应该使用或编

  • 问题内容: 我是一名C ++程序员,偶尔使用MySQL处理数据库,但是我的SQL知识非常有限。但是,我当然愿意改变这一点。 目前,我正尝试仅通过SQL查询对数据库中的数据进行分析(!)。但是我将放弃,而是将数据导入C 并使用C 代码进行分析。 我已经与同事讨论了这一点,他们也促使我使用C ++,他说SQL并不是用于复杂的分析,而是主要用于导入(从现有表中)和导出(到新表中)数据,还有更多内容。例如

  • 我被要求评估RabbitMQ而不是Kafka,但我发现很难找到一种比Kafka更适合消息队列的情况。有人知道消息队列在吞吐量、持久性、延迟或易用性方面更适合的用例吗?

  • 我是socket.io的新手,已经用node/express/socket.io编写了我的第一个应用程序。我想向公众发布我的应用程序,但我担心它对很多人都不起作用。我有几个朋友测试了我的应用程序,一切都很顺利(这是一个非常简单的应用程序)。我担心的是:现在每个连接似乎都在使用websockets,这正是我想要的。但是,我的应用程序有时会因为客户端的一些奇怪的事情而降级为“投票”吗?如果是,sock

  • 问题内容: 我想知道何时应该使用接口。 让我们考虑以下内容: 和: 我可以轻松实现它们,它们具有相同的功能…但是我也可以向车辆类中添加一些变量,这些变量可能应该在车辆中使用(maxSpeed,carType …) 使用接口的原因是什么? 谢谢! 编辑: 我在另一个线程中找到了关于它的漂亮链接:http : //www.thecoldsun.com/en/content/01-2009/abstra

  • 问题内容: 我正在编写一些JavaScript代码来解析用户输入的功能(用于类似于电子表格的功能)。解析了公式之后,我 可以 将其转换为JavaScript并在其上运行以产生结果。 但是,如果能避免,我总是避免使用它,因为它是evil的(而且,无论对与错,我一直认为它在JavaScript中更为evil,因为要评估的代码可能会被用户更改)。 那么,何时可以使用它呢? 问题答案: 我想花点时间解决您