记一次邮件推送的坑,c#基于smtp使用腾讯企业邮箱发送邮件总是失败的原因
今天在弄企业邮箱推送的东西,原版代码是这样的
public void SendEmail(string title, string content)
{
try
{
MailMessage mailMsg = new MailMessage();
mailMsg.To.Add(new MailAddress(ToEmails));
mailMsg.From = new MailAddress(FromEmail);
// 邮件主题
mailMsg.Subject = title;
// 邮件正文内容
mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(content, null, MediaTypeNames.Text.Html));
// 添加附件
//string file = "D:\\1.txt";
//Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
//mailMsg.Attachments.Add(data);
//邮件推送的SMTP地址和端口
SmtpClient smtpClient = new SmtpClient(EmailHost, EmailPort);
//SmtpClient smtpClient = new SmtpClient(EmailHost);
// 使用SMTP用户名和密码进行验证
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(FromEmail, FromEmailPW);
smtpClient.EnableSsl = true;
//smtpClient.Timeout = 10000;//超时
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = credentials;
smtpClient.Send(mailMsg);
}
catch (Exception ex)
{ throw;
} }
按照腾讯企业邮箱给的文档,我设置好邮箱账号、密码、smtp服务器、端口号之后开始测试,发现总是报错,当时腾讯企业邮箱的官方提示是这样的
可以看到,这里给的端口号是465,(这里不知道要不要骂娘了)
然后我断断续续的测试了一下午,发现怎么都发不出邮件,按理不会啊,就这么几行代码的事情,于是我试着删除一些配置,让程序按照自己的默认值来运行,于是我删除了端口号的配置,代码如下:
/// <summary>
///
/// </summary>
/// <param name="UserName"></param>
/// <param name="Money"></param>
public void SendEmail(string title, string content)
{
try
{
MailMessage mailMsg = new MailMessage();
mailMsg.To.Add(new MailAddress(ToEmails));
mailMsg.From = new MailAddress(FromEmail);
// 邮件主题
mailMsg.Subject = title;
// 邮件正文内容
mailMsg.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(content, null, MediaTypeNames.Text.Html));
// 添加附件
//string file = "D:\\1.txt";
//Attachment data = new Attachment(file, MediaTypeNames.Application.Octet);
//mailMsg.Attachments.Add(data);
//邮件推送的SMTP地址和端口
//SmtpClient smtpClient = new SmtpClient(EmailHost, EmailPort);
SmtpClient smtpClient = new SmtpClient(EmailHost);
// 使用SMTP用户名和密码进行验证
System.Net.NetworkCredential credentials = new System.Net.NetworkCredential(FromEmail, FromEmailPW);
smtpClient.EnableSsl = true;
//smtpClient.Timeout = 10000;//超时
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = credentials;
smtpClient.Send(mailMsg);
}
catch (Exception ex)
{ throw;
} }
结果就发出去了,我是真的日了狗,邮件发送失败的提示的提示也没有具体信息,先记录一下,以后使用这些企业邮箱实现邮件推送,最好不要用他们提供的端口号,感觉只需要有发信服务器就行了。
记一次邮件推送的坑,c#基于smtp使用腾讯企业邮箱发送邮件总是失败的原因的更多相关文章
- 解决.NET Core中MailKit无法使用阿里云邮件推送服务的问题
在博问中(.net core怎么实现邮件发送)知道了MailKit无法使用阿里云邮件推送服务发送邮件的问题,自已实测也遇到同样的问题,而用自己搭建的邮件服务器没这个问题. 于是,向阿里云提交了工单.. ...
- Laravel 下结合阿里云邮件推送服务
最近在学习laravel做项目开发,遇到注册用户推送邮件的问题,之前用java做的时候是自己代码写的,也就是用ECS推送邮件,但是现在转php的laravel了就打算用php的邮件发送功能来推送邮件, ...
- 用ASP.NET Core 1.0中实现邮件发送功能-阿里云邮件推送篇
在上篇中用MailKit实现了Asp.net core 邮件发送功能,但一直未解决阿里云邮件推送问题,提交工单一开始的回复不尽如人意,比如您的网络问题,您的用户名密码不正确等,但继续沟通下阿里云客户还 ...
- RedMine项目管理系统邮件推送设置(Windows环境)
RedMine项目管理系统有邮箱推送功能,当Bug,安全漏洞等内容被修改.解决.评论的时候,系统会通过邮件 及时的通知你的团队和客户.邮件通知的环节.形式.时间.接受人均可定制,功能十分实用. 下面是 ...
- wordpress使用阿里云邮件推送服务实现发送邮件
之前用腾迅云时,配置了wordpress是可以使用邮件服务的,然而到了阿里云,却无法使用了,有人说是因为阿里云关了25端口,但腾迅好像也关了. 百度看看有没有其他方法,最终让我找到个方法,可惜不是很完 ...
- Delphi阿里云邮件推送【支持单一发信、邮件批量发送和获取指定条件下的发送数据】
作者QQ:(648437169) 点击下载➨Delphi阿里云邮件推送 阿里云api文档 [Delphi阿里云邮件推送]支持SingleSendMail(单一发信接口). ...
- SpringBoot 简易实现热搜邮件推送,妈妈再也不用担心我不了解国家大事了
1.前言 上班的时候,无聊的时候,偶尔跑去百度看下热搜,所以就萌生出这种想法,通过邮件推送的方式实现效果,首先找到百度热搜的页面 热搜,话不多说,直接开干. 2.环境准备 因为是个SpringBoot ...
- jenkins持续集成Allure生成报表+邮件推送
本次基于<jenkins 生成HTML报表,邮件推送>的基础上将生成HTML报表修改为Allure生成报表,可以参考官方文档:https://docs.qameta.io/allure/# ...
- MVC4/5+jquery+bootstrap样式+dataTables+linq+WCF+EF6后台和前台的框架集合!好蛋疼哦!数据库支持MYSQL 和MSSQL,oracle。集成腾讯企业邮箱收邮件同步用户SSO登陆等功能。
花费了我好多心血,才做出来,下个项目准备用这个框架! 大家有没有做这方面的可以交流一下! 花费了我好多心血,才做出来,下个项目准备用这个框架! 大家有没有做这方面的可以交流一下! 花费了我好多心血,才 ...
随机推荐
- vue 中引入第三方js库
以 jQuery 为例 一.绝对路径直接引入,全局可用 主入口页面 index.html 中用 script 标签引入: <script src="./static/jquery-1. ...
- ArcGIS超级工具SPTOOLS-制图篇
1.1 梯形接幅表的创建 视频:https://weibo.com/tv/v/Hvq9KzKKQ?fid=1034:4374886702060760 根据一个图层范围,生成接幅表,支持地图比例尺有1 ...
- Linux学习笔记:fuser和lsof
fuser 和 lsof 可以用于系统安全检查.用fuser查看哪些用户和进程在某些地方作什么:fuser -cu /root 简略显示fuser -muv /mnt3 分列显示 lsof 拥有更多的 ...
- python画图matplotlib基础笔记
numpy~~基础计算库,多维数组处理 scipy~~基于numpy,用于数值计算等等,默认调用intel mkl(高度优化的数学库) pandas~~强大的数据框,基于numpy matplotli ...
- pandas总结
### 一.创建对象 # 1.可以通过传递一个list对象来创建一个Series,pandas会默认创建整型索引: # s=pd.Series([1,3,5,np.nan,6,8]) # print ...
- mongodb download
https://www.mongodb.org/dl/win32/x86_64-2008plus-ssl
- Qt编写数据可视化大屏界面电子看板7-窗体浮动
一.前言 窗体浮动的场景也比较多,用途也比较大,比如视频监控模块,有时候需要调整大小和位置,而不是作为dock嵌入到布局中,一旦嵌入到布局中,大小和位置都被布局接管了,只能任由布局使唤,按在地上摩擦的 ...
- 继承System.Web.UI.Page的页面基类
服务器端的page类 所有我们编写的页面都继承自page类,可见page类是非常重要的,page类提供了哪些功能,直接决定了我们的页面类可以继承什么功能,或者说,直接决定了我们的页面类功能的 ...
- swift 第十二课 as 的使用方法
忽略的基础性的问题,应该早点写出这个问题的解释比较好,毕竟 swift 好多的地方都用到了 as as!as?,是非常容易搞晕大脑的 1,as使用场合 (1)从派生类转换为基类,向上 ...
- 【ARM-Linux开发】U-Boot启动过程--详细版的完全分析
---------------------------------------------------------------------------------------------------- ...