在C#中获取入站电子邮件信息

时间:2016-12-16 18:14:46

标签: c# asp.net-mvc webhooks contextio

让我们说我有一个电子邮件帐户,每次收到新电子邮件时,我都希望在c#代码中收到此信息,并以json格式保存该电子邮件的一些信息,我已经阅读了关于Context.IOWebhooks的内容,但我还没有找到关于使用C#代码执行此操作的任何信息,请您就如何在我的代码中找到相关信息。 c#代码?我有一个ASP.net MVC应用,我只是希望每次收到有关新电子邮件的一些数据,我以前从未使用过Context.IOwebhooks。我怎么能在C#中做到这一点?

更新

[HttpPost] [System.Web.Mvc.ValidateInput(false)] public IHttpActionResult GetEmail(System.Web.Mvc.FormCollection form) { Person person = new Person { Name= System.Web.HttpContext.Current.Request.Unvalidated.Form["Account_id"],
LastName= System.Web.HttpContext.Current.Request.Unvalidated.Form["webhook_id"] }; db.People.Add(person); db.SaveChanges(); return Ok(); }

2 个答案:

答案 0 :(得分:2)

Context.IO几乎可以用webhook来寻找你正在寻找的东西。基本上,您可以在用户(https://context.io/docs/lite/users/webhooks)上设置webhook过滤器,并提供要注意的过滤器(如果有)。在您的应用上设置端点以接收webhook,当用户收到新消息时,您应该在该端点上收到webhook回发。

如果您只是想在不设置端点的情况下测试webhook,我会推荐像Mockbin这样的工具,它允许您设置模拟端点并接收数据http://mockbin.org/

有效负载在json中,所以在你的结尾应该很容易解析。唯一的事情是Context.IO没有C#库,但您可以使用您选择的库(或类似restsharp)直接针对REST API进行开发。

答案 1 :(得分:0)

您需要为您的电子邮件提供商使用API​​。由于您使用MVC,我们可以假设您正在编写业务应用程序而Exchange / Outlook是电子邮件提供商吗?

以下是使用GMAIL API或用于Exchange / Outlook或Hotmail的Mirosoft API的示例。

https://developers.google.com/gmail/api/guides/

https://msdn.microsoft.com/en-us/office/office365/api/calendar-rest-operations