当前位置: 首页 > news >正文

做网站比较好做网站赚钱吗

做网站比较好,做网站赚钱吗,wordpress主题解压后有多个文件,短视频舆情前言 邮件帮助类#xff08;smtp协议#xff09;#xff0c;需要NuGet引用MailKit包#xff0c;包含了同步发送邮件#xff08;SendEmail)、异步发送邮件#xff08; SendEmailAsync#xff09;方法#xff0c;由于非企业邮箱每日有发送限额#xff0c;故代码中支持轮…前言 邮件帮助类smtp协议需要NuGet引用MailKit包包含了同步发送邮件SendEmail)、异步发送邮件 SendEmailAsync方法由于非企业邮箱每日有发送限额故代码中支持轮询多个邮箱当某个邮箱超限时标记为不可用状态当天不再使用以确保邮件正常发送成功同时支持多种邮箱类型见下表。 下表为常用邮箱服务器的地址和端口SMTP/POP 邮箱类型SMTP-服务器地址SMTP-端口号POP-服务器地址POP-端口号是否SSL163邮箱smtp.163.com25pop.163.com110否126邮箱smtp.126.com25pop.126.com110否139邮箱smtp.139.com25pop.139.com110否QQ邮箱smtp.qq.com25pop.qq.com110否QQ企业邮箱smtp.exmail.qq.com587/465pop.exmail.qq.com995是Gmail邮箱smtp.gmail.com587pop.gmail.com995是Foxmail邮箱smtp.foxmail.com25pop.foxmail.com110否Sina邮箱smtp.sina.com.cn25pop3.sina.com.cn110否SinaVIP邮箱smtp.vip.sina.com25pop3.vip.sina.com110否Sohu邮箱smtp.sohu.com25pop3.sohu.com110否Yahoo邮箱smtp.mail.yahoo.com.cn587pop.mail.yahoo.com.cn995是 代码中的email.json格式如下请自行配置个人邮箱 [{Host: smtp.163.com,EnableSsl: true,Port: 465,SendAddress: xxxx163.com,LoginPassword: 邮箱登录密码,Password: smtp分配的密码代码中使用此密码,CanUse: true} ]代码示例 using MailKit.Net.Smtp; using MimeKit; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.IO; using System.Threading.Tasks; using VW.API.Common.Models;namespace VW.API.Common.Utils {/// summary/// EmailHelper 的摘要说明邮件帮助类/// /summarypublic class EmailHelper{private static readonly string _emailConfigPath Path.Combine(AppDomain.CurrentDomain.BaseDirectory, Configs/email.json);/// summary/// 创建Email/// /summary/// param nameemail邮箱地址/param/// param namesubject邮件主题/param/// param namemessage邮件内容/param/// param nameattachments附件/param/// returnsEmail/returnsprivate static SmtpClient GetSmtpClient(string email, string subject, string message, Liststring attachments, EmailModel emailModel, out MimeMessage mimeMessage){try{var client new SmtpClient();client.MessageSent (sender, args) {LogHelper.Error(args.Message.ToString());};client.ServerCertificateValidationCallback (sender, certificate, certChainType, errors) true;client.Connect(emailModel.Host, emailModel.Port, emailModel.EnableSsl);client.Authenticate(emailModel.SendAddress, emailModel.Password);mimeMessage new MimeMessage();mimeMessage.From.Add(new MailboxAddress(emailModel.SendAddress, emailModel.SendAddress));mimeMessage.To.Add(new MailboxAddress(email, email));mimeMessage.Subject subject;var builder new BodyBuilder();builder.HtmlBody message;foreach (var attachment in attachments){builder.Attachments.Add(attachment);}mimeMessage.Body builder.ToMessageBody();return client;}catch (Exception) { throw; }}/// summary/// 发送邮件同步/// /summary/// param nameemail邮箱地址/param/// param namesubject邮件主题/param/// param namemessage邮件内容/param/// param nameattachments附件/param/// returnsbool/returnspublic static bool SendEmail(string email, string subject, string message, Liststring attachments null){bool success false;string lastDayFilePath Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $Configs/{DateTime.Now.AddDays(-1).ObjToDateSplitYMD()}.email.json);FileHelper.DeleteFile(lastDayFilePath);string todayFilePath Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $Configs/{DateTime.Now.ObjToDateSplitYMD()}.email.json);if (!FileHelper.IsExistFile(todayFilePath))FileHelper.Copy(_emailConfigPath, todayFilePath, true);ListEmailModel emailModels JsonConvert.DeserializeObjectListEmailModel(FileHelper.FileToString(todayFilePath));foreach (EmailModel emailModel in emailModels){if (!emailModel.CanUse)//不能使用continue;try{var client GetSmtpClient(email, subject, message, attachments, emailModel, out MimeMessage mimeMessage);client.Send(mimeMessage);client.Disconnect(true);//client.Dispose();success true;break;}catch (Exception ex){LogHelper.Error(JsonConvert.SerializeObject(emailModel));LogHelper.Error(ex.ToString());emailModel.CanUse false;success false;}}FileHelper.WriteText(todayFilePath, JsonConvert.SerializeObject(emailModels));return success;}/// summary/// 发送邮件异步/// /summary/// param nameemail邮箱地址/param/// param namesubject邮件主题/param/// param namemessage邮件内容/param/// param nameattachments附件/param/// returnsbool/returnspublic static async Taskbool SendEmailAsync(string email, string subject, string message, Liststring attachments){bool success false;string lastDayFilePath Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $Configs/{DateTime.Now.AddDays(-1).ObjToDateSplitYMD()}.email.json);FileHelper.DeleteFile(lastDayFilePath);string todayFilePath Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $Configs/{DateTime.Now.ObjToDateSplitYMD()}.email.json);if (!FileHelper.IsExistFile(todayFilePath))FileHelper.Copy(_emailConfigPath, todayFilePath, true);ListEmailModel emailModels JsonConvert.DeserializeObjectListEmailModel(FileHelper.FileToString(todayFilePath));foreach (EmailModel emailModel in emailModels){if (!emailModel.CanUse)//不能使用continue;try{var client GetSmtpClient(email, subject, message, attachments, emailModel, out MimeMessage mimeMessage);await client.SendAsync(mimeMessage);client.Disconnect(true);//client.Dispose();success true;break;}catch (Exception ex){LogHelper.Error(JsonConvert.SerializeObject(emailModel));LogHelper.Error(ex.ToString());emailModel.CanUse false;success false;}}FileHelper.WriteText(todayFilePath, JsonConvert.SerializeObject(emailModels));return success;}} }namespace VW.API.Common.Models {/// summary/// EmailModel/// /summarypublic class EmailModel{/// summary/// 主机地址/// /summarypublic string Host { set; get; }/// summary/// 是否使用SSL/// /summarypublic bool EnableSsl { set; get; }/// summary/// 端口号/// /summarypublic int Port { set; get; }/// summary/// 邮件地址/// /summarypublic string SendAddress { set; get; }/// summary/// 登录密码/// /summarypublic string LoginPassword { set; get; }/// summary/// 邮件STMP授权码/// /summarypublic string Password { set; get; }/// summary/// 是否可用/// /summarypublic bool CanUse { set; get; }} }
http://www.sadfv.cn/news/277651/

相关文章:

  • 先建网站还是先做网页网站建设合同的结构
  • 南京高端网站建设做购物网站的图标从哪里来
  • php5 mysql网站开发基础与应用门户网站app
  • 黑色装修网站源码dede怎样入驻微信小程序
  • 中学生怎么做网站wordpress 文章之显示标题
  • 南昌网站小程序开发企业网站建设条件
  • 有发展的小企业网站建设怎样做百度网站推广
  • 网站规划与设计就业vs 2008 建立网站
  • 网站申请免费astro wordpress
  • 专业做国际网站wordpress trego
  • 电子科技网站永定路网站建设
  • 蓝奏云注册网站如何查看网站蜘蛛
  • 新开传奇手游网站大全紫金银行网站
  • 网站开发工程师招聘要求阿里云apache重写wordpress
  • 如何利用国外网站做自媒体大数据精准营销
  • 网站后台编辑器下载海南省住房建设厅网站首页
  • 做本地网站能赚钱么wordpress文章批量编辑
  • 域名备案成功怎么做网站营销型网站建设规划书
  • 网站开发项目怎么接怎么制作糖葫芦教程
  • 河北中冶润丰建设股份有限公司网站艺术生搭建wordpress个人博客
  • 深圳专业高端网站建设费用wordpress级简主题
  • 个人网站优秀作品网站浮动咨询代码
  • 无锡网站建设制作方案网站左侧广告代码
  • 石家庄专业模板网站制作价格网站建设接活
  • 成都建设网站公司东莞自己建网站哪家强
  • 聊城手机站网站公司企业网站空间域名
  • 专业网站优化推广以公司做网站
  • 网站建设的内容有哪些zero的大型网站seo教程
  • 线上少儿编程网站开发wordpress时间代码
  • 长沙有哪些网站建设公司做视频网站需要什么空间吗