云服务器上不允许你随便发邮件的,否则你想想,每个人都可以随便发邮件,你天天得收多少垃圾邮件。
nodejs代码加密,用Jshaman()
node.js中发送邮件可以使用nodemailer
-----
var mailer = require('nodemailer');
var transport = mailer.createTransport(configs.mail_opts);//1.0
var SITE_ROOT_URL = 'http://' + configs.sys.host;
/**
* Send an email
* @param {Object} data 邮件对象
*/
var sendMail = function (data, callback) {
transport.sendMail(data, function (err, info) {
if (err) {
console.log(err);
callback(err);
}
callback(err, info);
});
};
exports.sendMail = sendMail;
-------------------
调用
exports.sendMail({
from: from,
to: to,
subject: subject,
html: html
}, callback);
NodeJs 提供了SSL/TLS 这样的安全连接协议库,so 我们可以用这样的协议与邮件服务器通讯。要写完一个完整的收邮件的工具还是需要一定的时间,流程大致如上面的流程图了。
那么什么是SSL?什么是TLS?
SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。
SSL协议位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。 SSL握手协议(SSL Handshake Protocol):它建立在SSL记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。
安全传输层协议(TLS)用于在两个通信应用程序之间提供保密性和数据完整性。该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。
TLS 的最大优势就在于:TLS 是独立于应用协议。高层协议可以透明地分布在 TLS 协议上面。然而,TLS 标准并没有规定应用程序如何在 TLS 上增加安全性;它把如何启动 TLS 握手协议以及如何解释交换的认证证书的决定权留给协议的设计者和实施者来判断。
可以看出为了邮件的安全性,采用SSL/TLS的通讯技术还是有必要的。废话不说,看代码:
首先引入库 var tls = require('tls');
var options = {
host: 'pop.qq.com',
port: 995,
user: 'XXXXXXXXXXX@qq.com',
pass: 'XXXXXXXXXX'
}
var Socket = tls.connect(options.port, options.host, cb_connected);
//注册事件-连接回调
Socket.on('connect', cb_connecting);
//注册事件-服务器返回数据处理
Socket.on('data', cb_Server_DataBack);
上面的cb_XXXX都是回调函数。至于端口和服务器地址大家参看邮件服务提供商的帮助了,是不是很简单,3行代码。
剩余的就是用户的操作,输入命令,执行,显示操作结果即可。
利用socket将命令写到服务端,like this : Socket.write("命令 \r\n"); 顺带一提命令以\r\n作为结束标记一定要写。
pop3协议的通信是一问一答的模式,想要做批量命令操作的小伙伴就要动点脑了
作者:DrS6
链接:
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
新浪微博怎么注册? 若使用的是vivo手机,可打开新浪微博软件,点击右上角“注册”,然后输入手机号即可完成注册。怎样注册微博邮箱 首先微博邮箱的别称又叫新浪邮箱(因为微博就是新浪的旗下产品,邮箱也是)...
qq邮箱怎么用微信扫码登录? 有QQ么?有的话,登陆QQ,界面上有个信封样子的图标,点击就能进去了。或者,浏览器搜索‘QQ邮箱’,输入QQ号后面跟@,再输入QQ密码就OK啦。例如:123456789@...
kindle怎么导入电子书需要什么格式(kindle电子书支持什么格式) ; 对于很多刚刚接触Kindle的新手来说,可能怎么把下载的电子书导入到Kindle都是问题,所以今天我就来教大家怎么...
邮箱号是不是qq号? 邮箱号不一定是qq号。有可能是也有可能不是。如果是先申请的QQ号,都会附赠一个邮箱,QQ邮箱用的就是QQ号,QQ邮箱的格式是“QQ号”+“@qq.com”结束。例如:QQ号为“1...
188邮箱更改后缀 1、要注册一个com域名。2、去找188邮箱,或是用google的企业套件可以进行修改。3、就有自己的邮箱***@***.com,可以设置无限个邮箱。199邮箱国内外邮件收发稳定、...
网警和黑客谁厉害? 一半一半,没有谁能太厉害吧,技术会一直在突破,普通人尽量别触犯网警能抓你的条令,也不去帖子上喷黑客或者做不安全的交易,一般情况下网警和黑客影响不到你网络警察和电脑黑客,谁对网络安全...