【问题标题】:Do SMTP/IMAP servers save the email address for an existing email account? Can it be retrieved?SMTP/IMAP 服务器是否会保存现有电子邮件帐户的电子邮件地址?可以找回吗?
【发布时间】:2014-08-10 18:01:24
【问题描述】:

邮件服务器是否保留现有帐户的地址? 可以查询地址吗?

例如, 如果我有一个现有帐户及其用户名(登录名)和密码, 但我忘记/丢失了域名。 是否可以从邮件服务器中检索完整的邮件地址(无论是 INCOMING 还是 OUTGOING)?如果可能,是否有任何 API 可以在 Android 应用上实现它?

我知道一些邮件服务将完整的邮件地址视为其登录名, 他们要求提供完整的登录地址。我不是在谈论这个案例。

邮件服务器会提供我帐户的地址吗? 如果有人解释这些问题,我将不胜感激。

【问题讨论】:

  • 不,它甚至可能不是唯一的:我有几个不同的域,它们都过滤到一个登录中。
  • 哦,所以我无法通过登录名/密码检索唯一的邮件地址,因为该地址在服务器端不是唯一的?没有办法识别吗?无论如何感谢您的评论。
  • 你可以猜到,但不能保证你是对的

标签: java android email smtp imap


【解决方案1】:

邮件服务器通常将邮件中的地址记录在邮件本身中,您可以查看。

针对一组消息发出foo uid fetch x:y body.peek[header.fields (received)]。每条消息的第一个 Received 字段通常包含一个“for”子句。这是我收件箱中的一封(为清楚起见,请缩写):

Received: from ... by ... with lmtp id ... for arnt@gulbrandsen.priv.no; Sun, 22 Jun 2014 20:52:26 +0000

“for”子句中的地址通常是属于 IMAP 帐户的地址(如果存在的话)。 for 子句是可选的,所以不能依赖它。

请注意,第二个和后续 Received 字段中的 for 子句的可靠性要低得多。

【讨论】:

  • 我会调查的。非常感谢您的解释。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-06-20
  • 1970-01-01
  • 2021-08-31
  • 2011-01-08
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多