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


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

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

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


1111
2017-11-23 06:49


起源




答案:


标准的MIME类型是 application/pdf。赋值定义于 RFC 3778,应用程序/ pdf媒体类型,引自 MIME媒体类型注册表

MIME类型由标准组织The。控制 互联网号码分配机构 (IANA)。这是管理根名称服务器和IP地址空间的组织。

指某东西的用途 x-pdf 早于PDF的MIME类型的标准化。中的MIME类型 x- 命名空间被认为是实验性的,正如那些 vnd. 命名空间被视为特定于供应商。 x-pdf 可能用于与旧软件兼容。


1478
2017-11-23 07:22





这是一个定义的约定 RFC 2045 - 多用途Internet邮件扩展(MIME)第一部分:Internet邮件主体的格式

  1. 私人的 [亚型] 可以定义值(以“X-”开头)   两个合作代理人之间没有双边   外部注册或标准化。这样的价值观   无法注册或标准化。

  2. 新标准值应在IANA注册,如中所述 RFC 2048

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

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

(请注意,根据RFC 2045,“[m]媒体类型和子类型的特性始终不区分大小写”,因此“X-”和“x-”的解释之间没有区别。)

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

正如Chris Hanson所说,MIME类型由IANA控制。详细说明如下 RFC 2048 - 多用途Internet邮件扩展(MIME)第四部分:注册过程。根据 RFC 3778,是的 IANA引用 作为“application / pdf”的定义,

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

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


138
2017-12-29 12:13





来自维基百科媒体类型,

媒体类型由类型,子类型和可选项组成   参数。例如,HTML文件可能被指定为text / html;字符集= UTF-8。

媒体类型由顶级类型名称和子类型名称组成,即   进一步构成所谓的“树”。

top-level type name / subtype name [ ; parameters ]

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

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

标准:

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

type / media type name [+suffix]

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

卖方:

供应商树用于与公共可用的媒体类型相关联   产品。它用 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

个人或虚荣树:

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

type / prs. media type name [+suffix]

未注册的x。树:

“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 是适当的使用,而你应该避免使用过时和未注册 x- 媒体类型如 RFC 2048 和 RFC 6838


19
2017-12-14 08:31



为什么在这个世界上,你会回到7年前的问题(当时),对一个已经得到很好回答的问题给予一个很长的答案(两次!)?先生,你的手上有太多时间。 - T Nguyen