"Falta la palabra en la frase: juego de caracteres no admitido", cuando se utiliza el paquete de correo
Estoy tratando de analizar correos electrónicos y recibo este tipo de errores usando el paquete de correo. ¿Es un error en el paquete de correo o algo que debería manejar yo mismo?
missing word in phrase: charset not supported: "gb18030"
charset not supported: "koi8-r"
missing word in phrase: charset not supported: "ks_c_5601-1987"
¿Cómo puedo arreglarlos? Creo que debería usarjuego de caracteres Pero no estoy seguro de cómo. Así es como se ve un encabezado de correo electrónico
Received: from smtpbg303.qq.com ([184.105.206.26]) by mx-ha.gmx.net
(mxgmxus001) with ESMTPS (Nemesis) id 0MAOx2-1X2yNC2ZFC-00BaVU for
<[email protected]>; Sat, 14 Jun 2014 18:11:48 +0200
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qq.com; s=s201307;
t=1402762305; bh=imEvSr8IPsqWTXU63xUHRv+wuQG+Tcz2mPP9ai4rrE4=;
h=X-QQ-FEAT:X-QQ-SSF:X-HAS-ATTACH:X-QQ-BUSINESS-ORIGIN:
X-Originating-IP:In-Reply-To:References:X-QQ-STYLE:X-QQ-mid:From:To:Subject:Mime-Version:Content-Type:Content-Transfer-Encoding:Date:
X-Priority:Message-ID:X-QQ-MIME:X-Mailer:X-QQ-Mailer:
X-QQ-ReplyHash:X-QQ-SENDSIZE:X-QQ-FName:X-QQ-LocalIP;
b=QXs4CveboS8nG6htN9W6amC3X+F7X3ZtFrt6jrjWI+RmbvqBuTCVmX9IlaqCX84H8
n14x2Wp7x4kDYcNRqhe+HjTpf715TTQXc4d40b9e38frC/5qIhpMtYNsD8iEJwRzHW
U3xi8Yq7OCIB303fIpytx8tOjexQpZKSHbJ7ecX0=
X-QQ-FEAT: zaIfg0hwV2pIDflZYPQUsuPPXG5wtRVHJU6PiOYLBBA=
X-QQ-SSF: 00010000000000F000000000000000L
X-HAS-ATTACH: no
X-QQ-BUSINESS-ORIGIN: 2
X-Originating-IP: 180.155.99.102
In-Reply-To: <trinity-b7c6d611-52fd-4afa-b739-2deb243532a6-1402761364579@3capp-mailcom-lxa05>
References: <[email protected]>,
<[email protected]>
<trinity-b7c6d611-52fd-4afa-b739-2deb243532a6-1402761364579@3capp-mailcom-lxa05>
X-QQ-STYLE:
X-QQ-mid: webmail474t1402762303t356131
From: "=?gb18030?B?08bTzg==?=" <[email protected]>
To: "=?gb18030?B?V2lsaGVsbSBLdW1tZXI=?=" <[email protected]>
Subject: =?gb18030?B?u9i4tKO6ILvYuLSjulBhbGFjZSBXZXN0bWluc3Rl?=
=?gb18030?B?cjogMDEtMDctMjAxNCAtIDA0LTA3LTIwMTQ=?=
Mime-Version: 1.0
Content-Type: multipart/alternative;
boundary="----=_NextPart_539C743F_08A07490_0157E268"
Content-Transfer-Encoding: 8Bit
Date: Sun, 15 Jun 2014 00:11:43 +0800
X-Priority: 3
Message-ID: <[email protected]>
X-QQ-MIME: TCMime 1.0 by Tencent
X-Mailer: QQMail 2.x
X-QQ-Mailer: QQMail 2.x
X-QQ-ReplyHash: 170675637
X-QQ-SENDSIZE: 520
X-QQ-FName: 7B2EFFAD16B8462B84D3499A4CC7DDEF
X-QQ-LocalIP: 163.177.66.155
Envelope-To: <[email protected]>
X-GMX-Antispam: 0 (Mail was not recognized as spam); Detail=V3;
X-GMX-Antivirus: 0 (no virus found)
Editar:
He intentado usar eljuego de caracteres empacarlo pero no tiene ningún efecto. Todavía recibo el mismo error en los mismos mensajes.
import "code.google.com/p/go-imap/go1/imap"
header := imap.AsBytes(rsp.MessageInfo().Attrs["RFC822.HEADER"])
r, err := charset.NewReader("UTF-8", bytes.NewReader(header))
if err != nil {
log.Fatal(err)
}
fmt.Printf("new char is %v", r)
msg, err := mail.ReadMessage(r)
if err != nil {
log.Fatal(err)
return mgs, err
}
mg.From, err = msg.Header.AddressList("From")
if err != nil {
log.Errorf("NO FROM msg %s, err %v", header, err)
return
}
El paquete de correo parece ser capaz de decodificar solorfc2047
pero el paquete charset no es compatible con esto
character set "rfc2047" not found
Parecemahonia ¿Cuál podría solucionar el problema?