Pergunta bastante simples, mas não consigo encontrá-la em nenhum lugar on-line. Estou tentando criar um programa que, dependendo do tipo de arquivo, me dê a extensão.
Pergunta bastante simples, mas não consigo encontrá-la em nenhum lugar on-line. Estou tentando criar um programa que, dependendo do tipo de arquivo, me dê a extensão.
Respostas:
Não, image/jpgnão é o mesmo que image/jpeg, apenas image/jpegé reconhecido como o tipo de mímica real para arquivos JPEG.
Veja https://tools.ietf.org/html/rfc3745 , https://www.w3.org/Graphics/JPEG/ .
Exibir o tipo de conteúdo incorreto image/jpgno IE pode causar problemas, consulte http://www.bennadel.com/blog/2609-internet-explorer-aborts-images-with-the-wrong-mime-type.htm .
image/jpeg jpeg jpg;image/jpg jpeg jpg;
Para aqueles que podem ajudar, eu uso essa lista como uma referência para definir meu tipo de conteúdo quando tiver que lidar com imagens no meu aplicativo.
Diz que a extensão jpg pode ser declarada com Content-type : image/jpeg
Não há nenhum image/jpgatributo para o tipo de conteúdo.
tl; dr as "normas" são uma bagunça miscelânea; depende de quem você pergunta!
No geral, parece não haver tipo MIME image/jpg. No entanto, na prática, quase todo o software lida com arquivos de imagem " *.jpg" muito bem.
Este tópico específico é confuso porque a associação variável da extensão de nome de arquivo associada a um tipo MIME depende de qual organização criou a tabela de extensões de nome de arquivo para tipos MIME. Em outras palavras, a extensão do nome do arquivo .jpgpode ser muitas coisas diferentes.
Por exemplo, aqui estão três "listas completas" e uma RFC que varia em torno de várias extensões de nome de arquivo no formato de imagem JPEG e os tipos MIME associados.
.jfif, .jfif-tbnl, .jpe, .jpeg, .jpg→image/jpeg.jfif, .jpe, .jpeg, .jpg→image/pjpeg.jpeg, .jpg →image/jpeg.jpeg, .jpg →image/x-citrix-jpeg.pjpeg → image/pjpegjpg Não mencionadojpeg→ consulte RFC 2045 (sem menção), consulte RFC 2046 → image/jpeg13JPEG → video/JPEGjpeg2000 → video/jpeg2000jpm→ image/jpm( JPEG 2000 )jpx→ image/jpx( JPEG 2000 )vnd.sealedmedia.softseal.jpg → image/vnd.sealedmedia.softseal.jpg.jpg extensão de arquivo não mencionada.jpeg extensão de arquivo não mencionada.jp2, .jpg2→ image/jp2( JPEG 2000 ) 9.jpf, .jpx→ image/jpx( dados de imagem codificados em JPEG 2000 ISO-JPEG2000-2 ) 10.mj2, .mjp2 → video/mj2( Motion JPEG 2000 ) 11.jpm, .jpgm→ image/jpm( perfis e extensões JPEG 2000 ) 12Essas "listas completas" e o RFC não têm o tipo MIME image/jpg! Mas para MIME digite image/jpegalgumas listas que têm diferentes extensões de nome de arquivo ( .jpeg, .jpg...). Outras listas não mencionam image/jpeg.
Além disso, existem diferentes tipos de formatos de imagem JPEG s (por exemplo , formato Progressive JPEG Image , JPEG 2000 , etc) e "Extensões JPEG" que podem ou não se sobrepor na extensão do nome do arquivo e no tipo MIME declarado.
Outra coisa confusa é que a RFC 3745 parece não corresponder aos tipos de mídia da IANA, mas a RFC 3745 deve informar o documento sobre os tipos de mídia da IANA . Por exemplo, na RFC 3745 .jpfé a extensão de arquivo preferida para, image/jpxmas nos tipos de mídia da IANA, o nome jpfnão está presente (e esse documento da IANA faz referência à RFC 3745 !).
Outra coisa confusa é que os tipos de mídia da IANA listam "nomes", mas não listam "extensões de nome de arquivo". Isso é proposital, mas confunde o esforço de mapear extensões de nome de arquivo para tipos MIME.
Outra coisa confusa: é " mime " ou " MIME " ou " tipo MIME " ou " tipo mime " ou " mime / tipo " ou " tipo de mídia "⁉ 😧
O documento aparentemente oficial da IANA é surpreendentemente inadequado. Nenhum tipo MIME está registrado para a extensão do arquivo, no .jpgentanto, existe o ímpar vnd.sealedmedia.softseal.jpg. A extensão do arquivo .JPEGé conhecida apenas como um videotipo, enquanto a extensão do arquivo .jpegé um tipo de imagem (quando as letras maiúsculas e minúsculas começaram a ser importantes !?). Ao mesmo tempo, jpeg2000é tipo videoainda RFC 3745 considera JPEG 2000 um imagetipo! A lista da IANA parece atender aos formatos jpeg específicos da empresa (por exemplo vnd.sealedmedia.softseal.jpg).
Devido às confusões anteriores, é difícil encontrar um documento canônico aceito pelo setor que mapeie extensões de nome de arquivo para tipos MIME, principalmente para o formato de arquivo de imagem JPEG.
Pergunta relacionada " Lista de TODOS os MimeTypes do planeta, mapeados para extensões de arquivo? ".
O importante a ser observado aqui é que o tipo mime não é o mesmo que a extensão do arquivo. Às vezes, no entanto, eles têm o mesmo valor.
https://www.iana.org/assignments/media-types/media-types.xhtml inclui uma lista de tipos MIME registrados, embora não haja nada impedindo você de criar o seu próprio, desde que você esteja no envio e o fim do recebimento. Aqui é onde a Microsoft entra em cena.
Onde há muita confusão, é o fato de os sistemas operacionais terem sua própria maneira de identificar os tipos de arquivo usando o final do nome do arquivo, conhecido como extensão. Nos sistemas operacionais modernos, o nome inteiro é uma cadeia longa, mas em sistemas operacionais mais primitivos, é tratado como um atributo separado.
O SO que causou a confusão é o MSDOS, que limitou a extensão a 3 caracteres. Essa limitação é herdada até hoje em dispositivos, como cartões SD, que ainda armazenam dados da mesma maneira.
Um efeito colateral dessa limitação é que algumas extensões de arquivo, como .gifo tipo Mime image/gif, e outras são comprometidas. Isso inclui image/jpegcuja extensão está reduzida .jpg. Mesmo no Windows moderno, onde a limitação é levantada, a Microsoft nunca deixa de lado o passado e, portanto, a extensão do arquivo ainda é a versão reduzida.
Dado que isso:
A resposta curta é:
image/jpg, então a resposta é que não é o mesmo queimage/jpeg Enquanto estamos nisso ...
As versões herdadas do Internet Explorer tiveram a liberdade de fazer upload de jpegarquivos com o Mime Type de image/pjpeg, o que, é claro, significa apenas mais trabalho para todos os outros. Eles também enviaram pngarquivos como image/x-png.
Não tenho, image/jpgmas você pode usar.jpg
Exemplo
<input type="file" accept=".jpg"/>
Fonte: https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/file#Unique_file_type_specifiers