添加 cc 和 bcc 时无法通过发送网格发送电子邮件
Posted
技术标签:
【中文标题】添加 cc 和 bcc 时无法通过发送网格发送电子邮件【英文标题】:Not able to send emails through send grid when i add cc and bcc 【发布时间】:2021-06-23 03:25:30 【问题描述】:我尝试发送电子邮件通知到列表、抄送列表和密件抄送列表,但我收到错误提示错误请求和成功代码为假。
如果我不添加抄送、密送列表,我可以发送电子邮件。你能帮我解决这个问题吗
var apiKey = "SG.xxxxxxxxxxxxxxxxxxxxxxxx"; //Environment.GetEnvironmentVariable("NAME_OF_THE_ENVIRONMENT_VARIABLE_FOR_YOUR_SENDGRID_KEY"); var client = new SendGridClient(apiKey); var msg = new SendGridMessage();
msg.From = new EmailAddress("xxxxxx@nidec-motor.com", "TechM");
msg.Subject = "Test email";
msg.PlainTextContent = "Sendgrid test email";
msg.htmlContent = "<strong>Hello World!";
msg.Personalizations = new List<Personalization>
new Personalization
Tos = new List<EmailAddress>
new EmailAddress("xxxxxx@gmail.com", "Eswar"),
new EmailAddress("xxxx@techmahindra.com", "Test User-Eswar")
,
Ccs= new List<EmailAddress>()
new EmailAddress("xxxx@TechMahindra.com", "Eswar"),
new EmailAddress("xxxx@techmahindra.com", "Test User-Eswar")
,
Bccs=new List<EmailAddress>()
new EmailAddress("xxx@gmail.com", "Eswar"),
new EmailAddress("xxx@techmahindra.com", "Test User-Eswar")
;
var response = await client.SendEmailAsync(msg);
var test = response.IsSuccessStatusCode;
【问题讨论】:
你不能在抄送处传递空列表,例如:Ccs= new List<EmailAddress>()
吗?
这里的问题是,为什么我无法发送带有 cc list 和 bcc list 的电子邮件?如果我删除 cc,bcc 列出它可以正常工作。
【参考方案1】:
当三个中的任何一个都丢失时,sendgrid 不会发送电子邮件,例如to, cc, bcc
。要么,您必须包括所有三个才能工作或消除 Email List
中的密钥。
例如:这就是我在JS
中的做法,其中to
、bcc
和cc
键只有在给出一些数据时才会被添加。
const sendEmailObj =
from: `goutham`,
...(to !== '' && to: to?.split(',')),
...(ccEmailAddress !== '' && cc: ccEmailAddress?.split(',')),
...(bccEmailAddress !== '' && bcc: bccEmailAddress?.split(',')),
template: 'temaplate-id',
subject: `Sendgrid Working`,
context:
message: 'Hello world!'
,
;
【讨论】:
以上是关于添加 cc 和 bcc 时无法通过发送网格发送电子邮件的主要内容,如果未能解决你的问题,请参考以下文章