SendGrid SMTP API:向同一收件人发送多封电子邮件

8
我有一个web应用程序,使用SendGrid的X-SMTP功能来构建单个电子邮件,然后合并并转发到在X-SMTPAPI头中指定的收件人列表。
文档在这里:http://sendgrid.com/docs/API_Reference/SMTP_API/ 我正在使用MVC.NET,并通过smtp.sendgrid.net发送MailMessage对象发送电子邮件。从头部合并值和发送电子邮件方面,一切似乎都很顺利。
但是,我注意到如果在“to”列表中多次指定相同的电子邮件地址,则只会发送一个电子邮件(或者至少我只收到了一个)。
有人有同样的经验吗?有没有办法解决这个问题?
提前感谢!
1个回答

6

SendGrid的服务器会去重To数组。唯一的解决办法是将重复内容拆分成不同的SMTP消息,或者更改地址,使其不重复(您可以使用加号编址,例如:person@example.comperson+foo@example.com)。


2
如果您为两个收件人指定唯一的数据,例如不同的unique_args或替换值,则会发送2条消息。请记住,这些消息将具有相同的SMTP ID,因此某些客户端(如gmail)只会显示其中一条消息。 - bwest
回答你的其他问题:我们会更新文档(谢谢!),并且没有办法禁用这种行为。你能解释一下你的使用情况吗?我们很少有人故意想要发送重复内容。 - bwest
所以,我尝试添加一个名为uid的unique_args数组和一个随机生成的guid值,并且SendGrid控制面板确实显示所有电子邮件都已发送,包括重复地址。正如你所提到的,我的客户端(或者可能是Exchange服务器?)只显示收到了一封电子邮件。 - Medjeti
是的,这正是我担心会发生的 :( 在这种情况下,我能给出的最好建议是将重复项从数组中拆分成不同的SMTP消息。如果您的数组中有超过2个重复项,使用递归函数可能是有意义的。 - bwest
@bwest:我也遇到了这个问题。我的使用情况在这里描述:http://stackoverflow.com/questions/28051007/sendgrid-recepients-with-the-same-email。也许你可以给我一些指导... - Anders Östman
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接