博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.Net中使用SendGrid Web Api发送邮件(附源码)
阅读量:6636 次
发布时间:2019-06-25

本文共 1539 字,大约阅读时间需要 5 分钟。

SendGrid是一个第三方的解决邮件发送服务的提供商,在国外使用的比较普遍。国内类似的服务是SendCloud.

SendGrid提供的发送邮件方式主要是两种, 一种是SMTP API, 一种是Web ApiSMTP API是一种比较简单的方式,只要我们准备好Mail Message, 直接发送到SendGrid的邮件服务器就可以了,SendGrid的邮件服务器会帮我们投递。另外一种是Web Api的方式。

一般来说,很多三方的服务器提供商都会禁止链接外部25端口,这样你就没有办法连接SendGrid的SMTP服务器发送邮件了。在这种情况下,Web API就是一个很好的选择。SengGrid官方有较为详细的SMTP API Demo. Demo的地址是  由于没有Web API的Demo, 自己花时间自己写了一份,现在共享出来

代码中使用了RestSharp, 一个非常方便在.Net中使用的访问Restful API的工具包。一个完整的发送邮件的代码如下, 包含cc, bcc和附件。

public class WebApiRestSharp  {      private const string ApiWebSite = "https://sendgrid.com";      private const string ApiUrlAddress = "api/mail.send.json";      public static void SendNormalHelloWorldEmail()      {          var client = new RestClient(ApiWebSite);          var request = new RestRequest(ApiUrlAddress, Method.POST);          request.AddParameter("api_user", Config.SendGridName);          request.AddParameter("api_key", Config.SendGridPassword);          request.AddParameter("to[]", Config.ToEmail);          request.AddParameter("cc[]", Config.ToEmail);          request.AddParameter("bcc[]", Config.ToEmail);          request.AddParameter("subject", "Test");          request.AddParameter("from", "test@test.me");          request.AddParameter("text", "HelloWorld1");          request.AddFile("files[2.txt]", @"C:\1.txt");          // execute the request          var response = client.Execute(request);          var content = response.Content; // raw content as string      }  }

 

本文转自JustRun博客园博客,原文链接:http://www.cnblogs.com/JustRun1983/p/4032727.html,如需转载请自行联系原作者

你可能感兴趣的文章
微信小程序flex布局
查看>>
老肖实录分享 | Mesos容器网络解决方案
查看>>
【转】理解CSS模块化
查看>>
javascript自执行函数
查看>>
Robot Framework自动化测试框架典型应用
查看>>
Red Hat Enterprise Linux 6 升级 Red Hat Enterprise Linux 7 经验分享
查看>>
React Native 中 fetch的使用心得
查看>>
InnoDB行格式对text/blob大变长字段的影响
查看>>
SublimeText几个冷门但很有用的插件
查看>>
树莓派 - nodejs
查看>>
原生JS实现hasClass,addClass,removeClass
查看>>
iOS并发编程Tips(二)
查看>>
JS 一定要放在 Body 的最底部么?聊聊浏览器的渲染机制
查看>>
打包上传 AppStore -iTunes Store operation failed
查看>>
如何从一个 URL 字符串中提取出origin (scheme+domain+port) 信息?
查看>>
发现一个jQuery v1.11.1下操作checkbox状态的bug
查看>>
Photoshop入门课程-imooc
查看>>
最牛「CSRF防护」,带你进入大虾们的圈子!
查看>>
Node.js 非阻塞的 Sleep 要怎么写 ?
查看>>
CUBA Platform 6.10.9 发布,企业级应用开发平台
查看>>