Pergunta

Ao trabalhar com PDFs, Já corri em toda a application/pdf tipos MIME e application/x-pdf entre outros.

Existe uma diferença entre estes dois tipos, e se assim o que é? É uma preferência sobre o outro?

Eu estou trabalhando em um aplicativo web que deve entregar enormes quantidades de PDFs e eu quero fazê-lo da maneira correta, se houver um.

Foi útil?

Solução

O tipo MIME padrão é application/pdf. A atribuição é definido na RFC 3778, The application / pdf tipo de mídia , referenciados a partir do MIME mídia registro .

tipos

MIME são controladas por um organismo de normalização, A Internet Numbers Authority IANA (Assigned ). Esta é a mesma organização que gerencia os servidores de nomes de raiz e o espaço de endereço IP.

O uso de x-pdf antecede a padronização do tipo MIME para PDF. MIME tipos no namespace x- são considerados experimentais, assim como aqueles no namespace vnd. são considerados específicos do fornecedor. x-pdf pode ser usado para compatibilidade com software de idade.

Outras dicas

Esta é uma convenção definida em RFC 2045 - Multipurpose Internet mail Extensions (MIME) Part One:. Formato da Internet Message Corpos

  1. Privado [subtipo] valores (começando com "X-") pode ser definida bilateralmente entre dois agentes cooperantes sem registro fora ou padronização. tais valores não pode ser registrado ou padronizado.

  2. Novos valores padrão deve ser registrado com IANA como descrito em RFC 2048 .

Uma restrição semelhante aplica-se ao tipo de nível superior. Da mesma fonte,

Se outro tipo de nível superior é para ser usado por qualquer motivo, deve ser dado um nome começando com "X-" para indicar seu status não-padrão e evitar um conflito potencial com um futuro nome oficial.

(Note que o RFC 2045, "[m] atching de tipo de mídia e subtipo é sempre case-insensitive", por isso não há diferença entre a interpretação de 'X' e 'x -').

Por isso, é justo supor que "application / x-foo" foi usado antes da IANA definido "application / foo". E ele ainda pode ser usado por pessoas que não estão cientes da atribuição de token IANA.

Como Chris Hanson disse tipos MIME são controladas pela IANA. Isto é detalhado na RFC 2048 - Multipurpose Internet mail Extensions (MIME) Parte IV: Registo Procedimentos . De acordo com a RFC 3778 , que é citado pelo IANA como a definição de "application / pdf",

O tipo de meio de aplicação / pdf foi registada pela primeira vez em 1993 por Paul Lindner para uso pelo protocolo Gopher; o registro foi posteriormente atualizado em 1994 por Steve Zilles.

O tipo "application / pdf" tem sido em torno de mais de uma década. Assim, parece-me que onde quer "application / x-pdf" tem sido utilizado em novas aplicações, a decisão pode não ter sido deliberada.

De tipo Wikipedia Media,

Um tipo de mídia é composto de um tipo, um subtipo, e opcional parâmetros. Como exemplo, um arquivo HTML pode ser designado text / html; charset = UTF-8.

tipo de mídia consiste em nome do tipo de nível superior e o nome do sub-tipo, que é estruturados em chamadas "árvores".

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

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

Todos os tipos de mídia devem ser registrados usando os procedimentos de registo IANA. Atualmente as seguintes árvores são criadas: standard, vendor, personal ou vanity, x. não registrado

Padrão:

Tipos de mídia na árvore normas não usar qualquer faceta árvore (prefixo).

type / media type name [+suffix]

Exemplos: "application / xhtml + xml", "image / png"

Vendedor:

vendedor árvore é usado para tipos de mídia associados à disposição do público produtos. Ele usa faceta 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

Pessoal ou Vanity árvore:

pessoal ou árvore Vanity inclui tipos de mídia criado experimentalmente ou como parte de produtos que não são distribuídos comercialmente. ele usa prs. faceta.

type / prs. media type name [+suffix]

não registrado x. árvore:

O "x". árvore pode ser usado para tipos de mídia destinados exclusivamente para uso em ambientes privados, locais e apenas com o acordo ativa de as partes trocá-los. Tipos nesta árvore não pode ser registrado.

De acordo com a versão anterior do RFC 6838 - Obsoleted RFC 2048 (Publicado em Novembro de 1996) deve raramente, ou nunca, ser necessário para usar tipos experimentais não registadas, e como tal a utilização de ambos "x-" e "x". formas é desencorajado . As versões anteriores do que RFC - RFC 1590 e RFC 1521 afirmou que o uso da notação "-x" para o Nome do sub-tipo pode ser usado para sub-tipos não registradas e privadas, mas esta recomendação foi tornado obsoleto em Novembro de 1996.

type / x. media type name [+suffix]

Assim, fica claro que o tipo tipo MIME application/pdf padrão é o mais adequado para uso enquanto você deve evitar usar o tipo de mídia x- obsoletos e não registrada como indicado na RFC 2048 e RFC 6838 .

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top