我正在尝试使用mandrill电子邮件服务发送电子邮件,但我收到以下错误
Full Response
[
{
"email": "[email protected]",
"status": "rejected",
"_id": "b814c2974594466cba9c904c54dca6c6",
"reject_reason": "invalid-sender"
}
]
除了上述错误之外,没有更多细节。我们使用.net发送带有Mandrill SMTP设置的电子邮件。
看到正在发送的电话/电子邮件会很有用。该错误表示发件人无效,如拒绝原因字段中所示。这可能是因为无效的电子邮件地址,从名称无效编码,或其他标头中的无效或损坏的编码使得Mandrill无法解析“从”标题,但没有看到您发送的实际电子邮件,很难确切地说明问题是什么。
您可能想要检查来自电子邮件地址中是否存在完全限定的域名,并且如果主题行已编码,则不会有新行(\n
)字符在主题行中断开多字节字符。如果您无法在原始SMTP邮件中识别问题,请随时访问get in touch with support以获取进一步的故障排除帮助。
对我来说,这是因为我忘了完成模板默认“从名字”和“主题”。
我有同样的问题。在我的情况下,头文件编码是问题。我确实将标题编码更改为UTF-8,但它确实有效。我使用的是C#SMTP,代码如下。
message.HeadersEncoding = Encoding.UTF8;
希望它有效!
对我来说,这是因为我的电子邮件来自[email protected]
Mandrill因为最后的1而拒绝了我。 [email protected]
和[email protected]
都是有效的,将被接受。
我的其他测试只有空白的From标题,所以它们也被拒绝了。在我登录并检查API日志之前,我甚至没有意识到Mandrill收到这些电子邮件。
我最近遇到过类似的问题。这是由于我在message.from_name字段中使用了某些字符。搜索完文档和堆栈溢出后,我找不到禁用字符的列表,所以虽然这不一定与你的情况有关,但我想我会分享这个小编列,我编译了一些可接受的字符(不是详尽无遗的)列表):
在JS中,这里是一个RegExp,它将与禁止的字符(或者更确切地说,不在上述列表中的任何字符)匹配:
const pattern = /[^a-zA-Z0-9_\-!#$%\^&*+={}?.]/;
希望这对任何坚持这一点的人都有帮助。