Mandrill "отклонить причину": "неверный отправитель"
Я пытаюсь отправить электронные письма с помощью службы электронной почты mandrill, но я получаю следующую ошибку
Full Response
[
{
"email": "someemail@somedomain.com",
"status": "rejected",
"_id": "b814c2974594466cba9c904c54dca6c6",
"reject_reason": "invalid-sender"
}
]
кроме вышеуказанной ошибки больше нет никаких подробностей об этом. мы используем .net для отправки писем с настройками SMTP Mandrill.
5 ответов
было бы полезно увидеть вызов / электронное письмо, которое отправляется. Эта ошибка означает, что есть недопустимый отправитель, как указано в поле причина отклонения. Это может быть из-за недопустимого адреса электронной почты, недействительно закодированного от имени, или недопустимой или сломанной кодировки в других заголовках, что делает его таким, что Mandrill не может анализировать заголовок "от", но, не видя фактического письма, которое вы отправляете, трудно сказать точно, в чем проблема.
вы, вероятно, хотите проверить что в адресе электронной почты есть полное доменное имя, и что если строка темы закодирована, нет таких вещей, как newline (\n
) символы, которые разбивают многобайтовые символы в строке темы. Если вы не можете определить проблему в сообщении raw SMTP, не стесняйтесь свяжитесь с поддержкой для получения дополнительной помощи по устранению неполадок.
У меня была та же проблема. В моем случае проблема заключалась в кодировке в заголовках. Я изменил кодировку заголовков на UTF-8, и это сработало. Я использовал C# SMTP, и код ниже.
message.HeadersEncoding = Encoding.UTF8;
надеюсь, что это работает!
для меня, это было потому, что мои письма возвращались из email@example.net1
Мандрил отверг меня из-за 1 в конце. e+mail@example.net
и email@example.neta
оба действительны и будут приняты.
мои другие тесты просто были пустыми из заголовков, поэтому они также были отклонены. Я даже не понимал, что эти письма были получены Mandrill, пока я не вошел в систему и не проверил журналы API.
недавно у меня была аналогичная проблема. Это было связано с тем, что я использовал определенные символы в сообщении.поле from_name. После поиска документации и переполнения стека я не смог найти список запрещенных символов, поэтому, хотя это не обязательно относится к вашему случаю, я подумал, что поделюсь этим небольшим списком, который я составил из некоторых приемлемых символов (не исчерпывающий список):
- a-z
- A-Z
- 0-9
- _, -,!,#, $, %, \, ^, &, *, +, =, {, }, ?, .
в JS, вот регулярное выражение, которое будет соответствовать запрещенным символам (или, скорее, любым символам, которые не находятся в вышеупомянутом списке):
const pattern = /[^a-zA-Z0-9_\-!#$%\^&*+={}?.]/;
надеюсь, что это полезно для тех, кто еще застрял на этом.