代码之家  ›  专栏  ›  技术社区  ›  Maxim Kachurovskiy

通配符MIME子类型

  •  13
  • Maxim Kachurovskiy  · 技术社区  · 11 年前

    我想用 image/* 数据URI中的MIME类型,例如。 data:image/*;base64,R0lGODlhE... 在里面 <img/> 要素

    • 它是否完全符合标准的MIME类型?
    • 它会在某些浏览器中导致问题吗?如果会,在哪些浏览器中?
    1 回复  |  直到 11 年前
        1
  •  11
  •   Parker    11 年前

    image/* 不是正式的MIME类型(尽管浏览器可能足够聪明来呈现它)。

    根据 RFC 2046 (第4.2节)有两种方法可以处理通用/未知图像:

    无法识别的“image”子类型应至少视为“application/octet流”。实现可以选择性地选择将其不特定识别的“图像”的子类型传递给安全且鲁棒的通用图像查看应用程序(如果此类应用程序可用)。

    注意:以这种方式使用通用图像查看应用程序会继承应用程序支持的最危险类型的安全问题。

    也就是说,您可以传递最通用(也是最官方)的MIME类型 application/octet-stream 或 你可以使用 image/image 。任何浏览器都应该能够找出图像类型,但我不确定。据我所见,浏览器对 jpg , gif , png -但我无法说明其他许多文件类型的情况。