Правильный тип носителя MIME для PDF-файлов
при работе с PDF-файлами я сталкивался с типами MIME application/pdf
и application/x-pdf
среди других.
есть ли разница между этими двумя типами, и если да, что это? Одно предпочтительнее другого?
Я работаю над веб-приложением, которое должно доставить огромное количество PDF-файлов, и я хочу сделать это правильно, если он есть.
3 ответов
стандартный тип MIME application/pdf
. Назначение определяется в RFC 3778, тип носителя application/pdf, на которые ссылается MIME типы носителей реестра.
типы MIME контролируются органом стандартов,Интернет Присвоенные Номера Орган (IANA). Это та же организация, которая управляет корневыми серверами имен и пространством IP-адресов.
использование x-pdf
предшествует стандартизации MIME тип для PDF. Типы MIME в x-
пространство имен считается экспериментальным, как и в vnd.
пространство имен считаются поставщика. x-pdf
может использоваться для совместимости со старым программным обеспечением.
Это соглашение, определенное в RFC 2045-Multipurpose Internet Mail Extensions (MIME) Часть первая: формат тел интернет-сообщений.
частная [подтип] значения (начиная с "X-") могут быть определены двусторонние отношения между двумя сотрудничающими агентами без вне регистрации или стандартизации. Эти ценности не могут быть зарегистрированы или стандартизированы.
новые стандартные значения должны быть зарегистрирован в IANA, как описано в RFC 2048.
аналогичное ограничение применяется к типу верхнего уровня. Из того же источника,
Если по какой-либо причине должен использоваться другой тип верхнего уровня, он должен быть дали имя, начинающееся с "X -", чтобы указать его нестандартный статус и чтобы избежать потенциального конфликта с будущим официальным названием.
(обратите внимание, что в RFC 2045, " [m]atching средств массовой информации тип и подтип всегда нечувствительны к регистру", поэтому нет никакой разницы между интерпретацией "X -" и " x -".)
поэтому справедливо предположить, что" application/x-foo "использовался до того, как IANA определила"application/foo". И он все еще может использоваться людьми, которые не знают о назначении токенов IANA.
Как сказал Крис Хансон, типы мимов контролируются IANA. Это подробно описано в RFC 2048-Multipurpose Internet Mail Extensions (MIME) Часть четвертая: Процедуры Регистрации. Согласно RFC 3778, которая составляет цитируется по IANA как определение для "приложения / pdf",
тип носителя application/pdf был впервые зарегистрирован в 1993 году Полом Линднером для использования протоколом gopher; регистрация была впоследствии обновлена в 1994 году Стивом Зиллом.
тип "application / pdf" существует уже более десяти лет. Поэтому мне кажется, что где бы "application / x-pdf" был использован в новых приложениях, решение, возможно, не было преднамеренным.
из Википедии Media type,
тип носителя состоит из типа, подтипа и необязательного параметры. Например, файл HTML может быть обозначен как text / html; charset=UTF-8.
тип носителя состоит из имени типа верхнего уровня и имени подтипа, которое далее структурируются в так называемые"деревья".
top-level type name / subtype name [ ; parameters ]
top-level type name / [ tree. ] subtype name [ +suffix ] [ ; parameters ]
все типы носителей должны быть зарегистрированы с помощью процедур регистрации IANA. В настоящее время: деревья создаются:standard
, vendor
, personal
или 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
личное или дерево тщеславия:
Personal или Vanity tree включает типы носителей, созданные экспериментально или в составе продукции, которая не распространяется на коммерческой основе. Он использует
prs.
аспект.
type / prs. media type name [+suffix]
незарегистрированный x. дерево:
дерево "x" может использоваться для типов носителей, предназначенных исключительно для использования в частных, местных условиях и только с активного согласия стороны обмениваются ими. Типы в этом дереве не могут быть зарегистрированы.
в соответствии с предыдущей версией RFC 6838-устаревший RFC 2048 (опубликовано в ноябре 1996 года) это должно быть редко, если когда-либо, необходимо использовать незарегистрированные экспериментальные типы, и как таковое использование обоих " x-" и" x". формы обескуражены. Предыдущие версии этого RFC-RFC 1590 и RFC 1521 заявили, что использование обозначения" x - " для имя подтипа может использоваться для незарегистрированных и частных подтипов, но эта рекомендация была отменена в ноябре 1996 года.
type / x. media type name [+suffix]
так ясно, что стандартный тип mime type application/pdf
является подходящим для использования, в то время как вы должны избегать использования устаревших и незарегистрированных x-
тип носителя, как указано в RFC 2048 и RFC 6838.