我在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)
为什么解码后的主题被破坏了?其他主题被正确解码.这是一个糟糕的编码主题吗?
该主题编码错误.它被分成两个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)
| 归档时间: |
|
| 查看次数: |
1194 次 |
| 最近记录: |