История изменений
Исправление gag, (текущая версия) :
Я здесь вижу намерение послать письмо одному получателю:
Но если я отправляю с gmail Email email({ "...@gmail.com", "Name" }, "...@gmail.com", "Subj", "Body"); email.send( "smtp://smtp.gmail.com:465", "...@gmail.com", "Password");
Но выходит, что их двое:
RCPT TO:<...@gmail.com>
< 250 2.1.5 OK 125sm1125430ljj.26 - gsmtp
RCPT TO:< ...@gmail.com>
< 553-5.1.2 The recipient address < ...@gmail.com> is not a valid RFC-5321 < 553 5.1.2 address. 125sm1125430ljj.26 - gsmtp * RCPT failed: 553
Вот тут и должна быть проблема.
EmailAddress(const std::string &email, const std::string &displayName)
: email_{email.empty() ? "" : "<"+email+">"},
name_{"\"" + displayName + "\""}
{
}
Наоборот: displayName опционален и может быть пустым, но никак ни email. Т.е. сейчас возможен случай:
EmailAddress({"", "Вася"})
Или ещё хуже: EmailAddress({"", ""})
. EmailAddress({"to@domain.tld", ""})
тоже будет выглядеть странно: "" <to@domain.tld>
.
Исходная версия gag, :
Я здесь вижу намерение послать письмо одному получателю:
Но если я отправляю с gmail Email email({ "...@gmail.com", "Name" }, "...@gmail.com", "Subj", "Body"); email.send( "smtp://smtp.gmail.com:465", "...@gmail.com", "Password");
Но выходит, что их двое: RCPT TO:<...@gmail.com>
< 250 2.1.5 OK 125sm1125430ljj.26 - gsmtp
RCPT TO:< ...@gmail.com>
< 553-5.1.2 The recipient address < ...@gmail.com> is not a valid RFC-5321 < 553 5.1.2 address. 125sm1125430ljj.26 - gsmtp * RCPT failed: 553 Вот тут и должна быть проблема.
EmailAddress(const std::string &email, const std::string &displayName)
: email_{email.empty() ? "" : "<"+email+">"},
name_{"\"" + displayName + "\""}
{
}
Наоборот: displayName опционален и может быть пустым, но никак ни email. Т.е. сейчас возможен случай: EmailAddress({"", «Вася»}) Или ещё хуже: EmailAddress({"", «„}). EmailAddress({„to@domain.tld“, “„}) тоже будет выглядеть странно: “» <to@domain.tld>.