主题编码电子邮件(RFC2047).解码错误

Jak*_*era 4 email go

我在Golang写应用程序.我需要解码电子邮件主题.

原题:

Raport zeksportuogłoszeńnieruchomości

编码主题:

=?utf-8?B?RG9tLmV1IC0gcmFwb3J0IHogZWtzcG9ydHUgb2fFgm9zemXF?=  =?utf-8?B?hCBuaWVydWNob21vxZtjaQ==?=^M
Run Code Online (Sandbox Code Playgroud)

解码主题:"Raport zeksportuogłosze▒▒nieruchomości"

我使用github.com/famz/RFC2047来解码电子邮件主题.

我的代码很简单:

RFC2047.Decode(msg.Header.Get("Subject"))
Run Code Online (Sandbox Code Playgroud)

为什么解码后的主题被破坏了?其他主题被正确解码.这是一个糟糕的编码主题吗?

Jim*_*imB 6

该主题编码错误.它被分成两个MIME编码字(因为编码的行长度超过76个字符),但它被分割在?字符的中间.

如果将这两个部分连接成一个编码字符串,则会返回原始主题:

s := "=?utf-8?B?RG9tLmV1IC0gcmFwb3J0IHogZWtzcG9ydHUgb2fFgm9zemXFhCBuaWVydWNob21vxZtjaQ==?="
fmt.Println(RFC2047.Decode(s))

// Dom.eu - raport z eksportu og?osze? nieruchomo?ci
Run Code Online (Sandbox Code Playgroud)