第三方组件之SinGooCMS.Plugins

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

原文地址:https://www.cnblogs.com/singoocms/p/14880747.html