我正在使用 SendGrid C# 代码发送电子邮件,我已成功发送电子邮件,但作为响应,我没有获得发送状态。如果我也将邮件发送到错误的电子邮件地址,它会给出成功响应,但我不会收到退回状态响应。然后我做了一些如何获取交付状态的研发,然后我开始了解Webhook。我是 Webhook 新手,我在敏锐的 webiste 中创建了一个 webhook URL 并粘贴到 SendGrid 网络书事件中。
我的普通 Sendgrid 电子邮件 C# 代码
Environment.SetEnvironmentVariable("SENDGRID_API_KEY", "xxxxx");
var apiKey = Environment.GetEnvironmentVariable("SENDGRID_API_KEY");
var client = new SendGridClient(apiKey);
var from = new EmailAddress("[email protected]", "CAP");
var subject = "Testing email from Sendgrid";
var to = new EmailAddress("[email protected]", "Good User");
var plainTextContent = "Hello, ";
var htmlContent = "<strong>Congratulations! you have got the email</strong>";
var msg = MailHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent);
msg.SetBypassBounceManagement(true);
msg.TrackingSettings = new TrackingSettings()
{
ClickTracking = new ClickTracking()
{
Enable = true,
EnableText = false
},
OpenTracking = new OpenTracking()
{
Enable = true,
SubstitutionTag = "%open-track%"
},
SubscriptionTracking = new SubscriptionTracking()
{
Enable = false
}
};
var response = await client.SendEmailAsync(msg).ConfigureAwait(false);
但我不知道发送电子邮件后如何获取响应的递送状态。请任何人帮忙解决这个问题。
每月支付 12 美元,您就可以使用他们的电子邮件活动 api,或者您将必须创建另一个微服务并托管一些 api,其中 sendgrid 提供一个 webhook 供您配置,以便如果发送任何电子邮件,它会自动调用您的应用程序接口