【问题标题】:What is the importance of correct MIME types?正确的 MIME 类型的重要性是什么?
【发布时间】:2011-01-03 17:40:20
【问题描述】:

在我的 Chrome 中,我收到以下警告:

Resource interpreted as stylesheet but transferred with MIME type text/plain.
Resource interpreted as script but transferred with MIME type text/html.
pngResource interpreted as image but transferred with MIME type text/plain.

我为什么要关心?或者有一个浏览器不会像主要浏览器那样对待资源的概率是多少?

【问题讨论】:

    标签: html mime


    【解决方案1】:

    MIME 类型让浏览器知道每个文件是什么。浏览器关联其他应用程序、辅助应用程序/扩展来处理某些 MIME 类型。因此,设置正确的 MIME 类型将让浏览器按照预期的方式处理对象/文件。

    【讨论】:

      【解决方案2】:

      MIME 告诉浏览器正在传递什么类型的内容。如果它是一个脚本,您应该让浏览器知道它是一个脚本,以确保它始终正确执行,原因与您应该为文件系统上的文件使用正确的文件扩展名几乎相同。

      在这里,Chrome 从上下文中猜测所传递的内容实际上是一个脚本,而不是所谓的 html,也许它也将其视为一个脚本,但这可以说是一件坏事,正如您一直以来的情况一样想要控制您发送到浏览器的内容,以及它如何解释这些内容。

      如果您不让其他浏览器知道它们分别是 脚本和图像,则其他浏览器可能无法执行您的脚本或显示您的图像。

      【讨论】:

        【解决方案3】:

        使用不正确的 mime 类型提供文件可能会导致安全漏洞。 Here's a high profile example.

        【讨论】:

        • 是的,但是,您能否返回一个 http 状态 422: Unprocessable Entity 以使用户知道某个特定的 mime 类型不受支持?然后你可以添加支持。此错误是为了防止触发下载不受支持的文件 mime 类型。
        猜你喜欢
        • 2017-12-19
        • 2013-01-22
        • 2010-10-10
        • 2011-05-11
        • 2012-02-06
        相关资源
        最近更新 更多