Los tokens encoded-word
(según RFC 2047) pueden aparecer en los valores de algunos encabezados. Ellos se analizan como sigue:
=?<charset>?<encoding>?<data>?=
Charset es UTF-8 en este caso, la codificación es B
que significa base64 (la otra opción es Q
que significa Citado imprimible).
Para leerlo, primero decodifique la base64, luego trátela como caracteres UTF-8.
Lea también varios RFC de Internet Mail para obtener más detalles, principalmente RFC 2047.
dado que está utilizando Perl, Encode::MIME::Header podría ser de utilidad:
SINOPSIS
use Encode qw/encode decode/;
$utf8 = decode('MIME-Header', $header);
$header = encode('MIME-Header', $utf8);
RESUMEN
Este módulo implementa RFC 2047 Mime cabecera de codificación. Hay 3 variantes de nombres de codificación ; MIME-Header, MIME-B y MIME-Q. La diferencia se describe a continuación
decode() encode()
MIME-Header Both B and Q =?UTF-8?B?....?=
MIME-B B only; Q croaks =?UTF-8?B?....?=
MIME-Q Q only; B croaks =?UTF-8?Q?....?=
Eso fue útil, gracias. Por cierto, también utilicé la codificación de impresión ('utf-8', $ headers_decoded) para mostrar correctamente los encabezados decodificados, si alguien más está leyendo esto mientras escribe algún script de correo. –