SinGooCMS.Plugins是一款第三方组件集合,如邮件、短信、OSS等!支持netstandard2.1和net framework 4.6.1。
在线文档API:http://www.singoo.top/include/doc/plugins/html/index.html
一、 邮件发送
在各种应用中,发送邮件应该是很频繁吧,比如注册一个用户就会发送欢迎信息到邮箱,绑定一个邮箱也会发一封确认邮件等等。
我们这里使用了第三方组件KitMail作为邮件发送工具,同时也兼容了.net自带的NetMail。
发送示例如下:
//声明一个实例,默认是KitMail组件 IEmail email = MailProvider.Instance; email.Config = new MailConfig() { ServMailAccount = "16826375@qq.com", ServMailSMTP = "smtp.qq.com", ServMailPort = 465, //开户SSL,端口填465,否则端口填25 ServMailUserName = "16826375", ServMailUserPwd = "nqfxgin11111111111111", //邮箱需要开通POP3/SMTP服务,这里的密码是授权码 ServMailIsSSL = true, FromDisplayName = "测试的" }; var result =await email.SendEmailAsync("16826375@qq.com", "这是一个测试", "this<br/>is<br>a<br/>test");
二、短信发送
集成了阿里云和腾讯云两种短信接口。
在使用之前需要在阿里云/腾讯云的短信平台创建【签名】以及【模板】。如果这2项没有审核通过的话,短信是发不出去的。
使用示例:
//阿里云发送短信 ISMS sms = SMSProvider.Create("AliYunSMS"); sms.Config = new SMSConfig() { SMSUId = "LTAI3R1111111", //账户AccessKey SMSPwd = "1DnnagtroDvcka91L0000000000", //账户AccessKey的密钥 EndPoint = "dysmsapi.aliyuncs.com", SignName = "新谷", //签名 RegionId = "cn-hangzhou" }; //SMS_25585959 是模板ID,code:123456 其中code表示模板的参数,而123456是code的值 var result = await sms.SendMsgAsync("17788760902,18296860929", "SMS_25585959", "code:123456");
/* 腾讯云发送短信 账户->访问管理->访问密钥->API密钥管理里查看,如果没有就新建 SecretId: AKIDoJuEHS81PfgXsz11111111111 SecretKey: ay9lokbSCkFd3NRI0Z0000000000000 短信->应用管理里面查看 SDK AppID : 1400370664 */ ISMS sms = SMSProvider.Create("QcloudSMS"); sms.Config = new SMSConfig() { SMSUId = "AKIDoJuEHS81PfgXszA1111111111111", //账户的SecretId SMSPwd = "ay9lokbSCkFd3NRI0ZHo0000000000000", //账户的SecretKey APPID = "1400370664", //应用的AppID EndPoint = "sms.tencentcloudapi.com", SignName = "singootop", //签名 RegionId = "ap-guangzhou" }; //850464 表示模板ID,123456 表示参数的值 var result = await sms.SendMsgAsync("17788760902", "850464", "123456");
三、阿里云存储OSS
为了提高网站的响应速度,我们可以把图片等文件存储到OSS。
//首先定义一个配置,也可以从数据库中读取 private AliyunOSSConfig config = new AliyunOSSConfig() { EndPoint= "oss-cn-shenzhen.aliyuncs.com", AccessKeyId= "LTAI3REva111111111111", //阿里云账户访问管理的AccessKeyId AccessKeySecret = "1DnnagtroDvcka91LOua0000000000", //阿里云账户访问管理的AccessKeySecret BucketName = "singoocms", //已经创建的文件夹 CName="file.singoo.top" //指向BucketName的域名 }; //上传文件 var oss = new AliyunOSS(config); var result = oss.PutObject("1.png", @"F:\qrcode.png"); //1.png是将存储在目录(BucketName)的文件名
如上,已经把文件上传到OSS后,可以使用http://file.singoo.top/1.png 来访问
OSS文件管理可以使用ossbrowser
ossbrowser是阿里云官方提供的OSS图形化管理工具,提供类似Windows资源管理器的功能。使用ossbrowser,您可以方便地浏览、上传、下载和管理文件。
下载地址:https://gosspublic.alicdn.com/oss-browser/1.13.0/oss-browser-win32-x64.zip?spm=5176.8465980.0.0.50671450Py3Xiw&file=oss-browser-win32-x64.zip
项目开源地址:https://github.com/SinGooCMS/SinGooCMSPlugins