首页 文章

适用于PDF文件的MIME媒体类型

提问于
浏览
1145

使用PDF时,我遇到了MIME类型 application/pdfapplication/x-pdf 等 .

这两种类型之间是否有区别,如果是这样,它是什么?一个优先于另一个?

我正在开发一个必须提供大量PDF的网络应用程序,我想以正确的方式进行,如果有的话 .

3 回答

  • 143

    这是RFC 2045 - Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies中定义的约定 .

    私有[子类型]值(以“X-”开头)可以在两个合作代理之间双边定义,无需外部注册或标准化 . 这些值无法注册或标准化 . 应按照RFC 2048中的说明在IANA注册新的标准值 .

    类似的限制适用于顶级类型 . 来自同一来源,

    如果出于任何原因要使用其他顶级类型,则必须为其指定一个以“X-”开头的名称,以指示其非标准状态并避免与未来的官方名称发生潜在冲突 .

    (请注意,根据RFC 2045,"[m]atching of media type and subtype is ALWAYS case-insensitive",所以有's no difference between the interpretation of ' X- ' and ' x-' . )

    因此,在IANA定义的“application / foo”之前使用“application / x-foo”是公平的 . 它仍然可能被不了解IANA令牌分配的人使用 .

    正如Chris Hanson所说,MIME类型由IANA控制 . 这在RFC 2048 - Multipurpose Internet Mail Extensions (MIME) Part Four: Registration Procedures中有详细说明 . 根据RFC 3778cited by the IANA作为"application/pdf"的定义,

    应用程序/ pdf媒体类型于1993年由Paul Lindner首次注册,供gopher协议使用;随后,Steve Zilles于1994年对注册进行了更新 .

    “application / pdf”类型已经存在了十多年 . 所以在我看来,无论“应用程序/ x-pdf”在新应用程序中使用过,这个决定可能都不是故意的 .

  • 21

    标准MIME类型是 application/pdf . 赋值在RFC 3778, The application/pdf Media Type中定义,从MIME Media Types registry引用 .

    MIME类型由标准组织Internet Assigned Numbers Authority(IANA)控制 . 这是管理根名称服务器和IP地址空间的组织 .

    x-pdf 的使用早于PDF的MIME类型的标准化 . x- 命名空间中的MIME类型被认为是实验性的,就像 vnd. 命名空间中的MIME类型被视为特定于供应商一样 . x-pdf 可能用于与旧软件兼容 .

  • 1526

    来自维基百科媒体类型,

    媒体类型由类型,子类型和可选参数组成 . 例如,HTML文件可能被指定为text / html;字符集= UTF-8 . 媒体类型由顶级类型名称和子类型名称组成,其进一步构造为所谓的“树” .

    top-level type name / subtype name [ ; parameters ]
    
    top-level type name / [ tree. ] subtype name [ +suffix ] [ ; parameters ]
    

    所有媒体类型都应使用IANA注册程序进行注册 . 目前创建了以下树: standardvendorpersonalvanity ,未注册 x.

    Standard:

    标准树中的媒体类型不使用任何树构面(前缀) .

    type / media type name [+suffix]
    

    示例:“application / xhtml xml”,“image / png”

    Vendor:

    供应商树用于与公共产品相关联的媒体类型 . 它使用vnd . 面 .

    type / vnd. media type name [+suffix] - used in the case of well-known producer
    
    type / vnd. producer's name followed by media type name [+suffix] - producer's name must be approved by IANA
    
    type / vnd. producer's name followed by product's name [+suffix] - producer's name must be approved by IANA
    

    Personal or Vanity tree:

    个人或虚荣树包括通过实验创建的媒体类型或作为未商业分发的产品的一部分 . 它使用了prs . 面 .

    type / prs. media type name [+suffix]
    

    Unregistered x. tree:

    “x” . 树可以用于专门用于私人,本地环境的媒体类型,并且只有交换它们的各方的主动协议才能使用 . 无法注册此树中的类型 . 根据RFC 6838的先前版本 - 废弃的RFC 2048(1996年11月发布),如果有的话,很少需要使用未注册的实验类型,因此使用“x-”和“x” . 形式是不鼓励的 . 该RFC的早期版本 - RFC 1590和RFC 1521表明,对于未注册和私有子类型,可以使用“x-”符号作为子类型名称,但该建议已于1996年11月废弃 .

    type / x. media type name [+suffix]
    

    所以很明显,标准类型MIME类型 application/pdf 是适当的使用,而您应该避免使用RFC 2048RFC 6838中所述的过时和未注册的 x- 媒体类型 .

相关问题