Protocolo de Extensões de Mensagens da Internet

Entendendo cabeçalhos MIME

Os cabeçalhos MIME contêm informações sobre o protocolo.

MIME-Version

Isso indica que a mensagem está formatada como MIME. Aparece como:

MIME-Version: 1.0

Content-Type

Isso indica o tipo de conteúdo da mensagem, dado como um par de tipo e subtipo: text/plain, text/html, por exemplo. O tipo de conteúdo multipart pode conter texto, HTML, anexos, imagens, áudio, vídeo etc.

Content-Type: multipart

Content-Transfer-Encoding

Indica se um esquema de codificação binário‑para‑texto é usado sobre o especificado pelo content-type. Se houver, indica qual. Podemos especificar aqui codificação 7‑bit, 8‑bit ou binária.

Encoded-Word

Os cabeçalhos de mensagens SMTP normalmente usam caracteres ASCII. Caracteres não‑ASCII devem usar a sintaxe de palavra codificada MIME em vez de uma string literal. O formato é:

"=? charset ? encoding ? texto codificado ?=".

Mensagens multipart

Uma mensagem MIME multipart contém um delimitador no cabeçalho content-type. Esse delimitador, que não deve ocorrer em nenhuma das partes, é colocado entre as partes, e no início e no fim do corpo da mensagem, da seguinte forma:

MIME-version: 1.0


 Content-type: multipart/mixed; boundary="frontier"

This is a multi-part message in MIME format.

--frontier

Content-type: text/plain

This is the body of the message.

--frontier

Content-type: application/octet-stream

Content-transfer-encoding: base64

PGh0bWw+CiAgPGhlYWQ+CiAgPC9oZWFkPgogIDxib2R5PgogICAgPHA+VGhpcyBpcyB0aGUg

Ym9keSBvZiB0aGUgbWVzc2FnZS48L3A+CiAgPC9ib2R5Pgo8L2h0bWw+Cg==

--frontier--

Cada parte consiste em seu próprio cabeçalho de conteúdo e um corpo.

Subtipos multipart

O padrão MIME define vários subtipos de mensagens multipartes. O subtipo é especificado no cabeçalho "Content-Type" da mensagem completa.

A seguir está uma lista dos subtipos mais usados.

  • Mixed: Multipart/mixed é usado para enviar arquivos com diferentes cabeçalhos "Content-Type" embutidos. Ao enviar imagens ou outros arquivos facilmente legíveis, a maioria dos clientes de e‑mail os exibirá embutidos.
  • Message: Uma parte de mensagem contém um e‑mail.
  • Digest: digest é uma forma simples de enviar múltiplas mensagens de texto. O tipo de conteúdo padrão para cada parte é "message/rfc822".
  • Alternative: O subtipo alternative indica que cada parte é uma versão "alternativa" do mesmo (ou similar) conteúdo, cada uma em um formato diferente indicado pelo cabeçalho "Content-Type".

Mais comumente multipart/alternative é usado para e‑mail com duas partes, uma em texto simples (text/plain) e outra em HTML (text/html). A parte de texto simples fornece compatibilidade retroativa enquanto a parte HTML permite o uso de formatação e hiperlinks. A maioria dos clientes de e‑mail oferece uma opção ao usuário para preferir texto simples ao invés de HTML; este é um exemplo de como fatores locais podem influenciar a escolha da aplicação sobre qual "melhor" parte da mensagem exibir.