【发布时间】:2015-03-24 14:03:38
【问题描述】:
我遇到过一些电子邮件地址中包含编码字词的电子邮件,例如而不是
abc <abc@example.com>
它包含:
abc <=?ISO8859-1?B?YWJjQGV4YW1wbGUuY29t=?=>
我发现许多电子邮件程序都存在问题,但有些没有,这让我认为它可能是某些 RFC 的一部分,尽管我找不到它。
此外,如果电子邮件地址标题采用以下形式:
From: =?ISO8859-1?B?YWJjQGV4YW1wbGUuY29t=?=
它会被许多程序解码,但不会被 Indy 解码。在大多数程序中发生的情况是,他们认为该部分是来自“名称”部分并对其进行解码,但他们将电子邮件地址编码,从而导致:
Name = abc@example.com
Email = =?ISO8859-1?B?YWJjQGV4YW1wbGUuY29t=?=
这使其至少部分解码良好。
然而,在 Indy 中,这会导致:
Name = **blank**
Email = =?ISO8859-1?B?YWJjQGV4YW1wbGUuY29t=?=
这应该在 Indy 中得到支持(或者相反,它认为 base64 部分是“名称”部分,而不是“电子邮件”部分)还是格式不正确的电子邮件地址?或者它是否应该解释为第一部分的解释问题,因为电子邮件确实可以看起来像 From: abc@example.com 而没有 <> 字符。
【问题讨论】:
-
看起来像 base64 编码。
-
@Craig 当然它是 base64 但问题在于电子邮件地址是编码的东西,而不是来自“名称”部分。
-
您使用的是什么版本的 indy10?我也遇到过这个问题,但我相信它已在更新的版本中得到修复。
-
投反对票有什么理由吗?
标签: delphi c++builder indy email-address