【问题标题】:How do I create a webhook for sendgrid in c#?如何在 C# 中为 sendgrid 创建 webhook?
【发布时间】:2015-06-30 12:01:22
【问题描述】:

我是使用 c# .Net 库使用 Sendgrid 电子邮件的新手。我们的要求希望我们跟踪电子邮件的状态,例如已交付/已发送到垃圾邮件/客户打开/报告为垃圾邮件等,通过查看其他用户对我以前的问题的文档和答案,我的理解是没有直接的方法跟踪电子邮件的状态(如结果对象)。

如果有人可以为我指出一些示例/示例代码或 C# 中的文档/实现,那将非常有帮助 1) 在使用发送网格 API 发送电子邮件时添加唯一参数。我可以使用 Guid 字符串作为参数吗 我假设我在下面做的事情是正确的。

var myMessage = new SendGridMessage();
var identifiers = new Dictionary<String, String>();
identifiers["Email_ID"] = "Email_ID";
identifiers["Email_Key"] = "9ebccd0d-67c0-4c28-bbf3-83d5bb69f098";
myMessage.AddUniqueArgs(identifiers);           

2) 如何使用事件 webhook 从 http_post 获取具有我上面使用的唯一参数的状态,以便我可以将电子邮件与状态相关联。任何示例代码、c# 中的文档或有关其工作原理的总体想法都可以帮助我开始。

感谢您的时间和答案。

【问题讨论】:

标签: c# email http-post sendgrid webhooks


【解决方案1】:

使用 official library that SendGrid provides 在 C# 中通过 SendGrid 发送电子邮件更容易。从您的代码示例来看,您可能已经在使用它了——干得好。

unique 参数只要被字符串化就应该可以工作,并且您没有尝试将对象传递给myMessage.AddUniqueArgs。

事件 Webhook 将向您指定的任何 URL 发送 JSON 数据包。如果您在通过 SendGrid 发送的电子邮件中包含了独特的参数,那么这些参数会自动添加到您从 webhook 返回的每个事件响应中 - 您也不需要打开任何其他东西来获取参数。

SendGrid Documentation. 中有一个此调用的示例和结果响应

【讨论】:

【解决方案2】:

SendGrid 有一个 Event Webhook,用于发布与您的电子邮件相关的事件 活动到您选择的 URL。这是一个易于部署的 允许客户轻松启动和运行的解决方案 处理(解析和保存)他们的事件 webhook。

这是基于 docker 的解决方案,可以部署在云服务上 就像开箱即用的 Heroku。

https://github.com/sendgrid/sendgrid-csharp/tree/main/examples/eventwebhook/consumer

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-10
    • 1970-01-01
    • 2022-06-21
    • 2021-05-21
    • 2017-02-17
    • 1970-01-01
    • 2019-08-23
    • 1970-01-01
    相关资源
    最近更新 更多