记录一些Modules的简单用法,方便快速查阅。
- DNS 解析模块
[javascript]
// 解析DNS
var dns = require(‘dns’);
var href = ‘www.laispace.com’;
var type = ‘A’;
// href 待解析的域名字符串, type 表示记录类型的字符串(A-地址解析/CNAME-别名解析/MX-邮件域名解析/SRV-服务记录等);
dns.resolve(href, type, function (err, result) {
if (err) {
throw err;
}
console.log(‘DNS解析结果是:’, result);
})
[/javascript]
解析结果:
除resolve()方法外,还有lookup()、resolve4()、resolve6()。resolveMx() 等其他方法见:DNS模块官方文档
- Crypto 加密模块
[javascript]
// 安装Node时保证添加了 OpenSSL 支持
var crypto = require(‘crypto’);
// 创建 hash 对象实例, 传入 md5/sha1/sha256/sha512/ripemd160
var md5 = crypto.createHash(‘md5’);
var password = ‘helloXiaoLai’;
console.log(‘输入的明文是:’, password);
// 生成hash
md5.update(‘myPassword’);
// 添加数据更新hash
md5.update(‘laispace.com’);
// 生成密钥, 16进制显示
password = md5.digest(‘hex’);
console.log(‘输出的密文是:’, password);
[/javascript]
加密结果:
除hashing加密外,还有HMAC加密、公钥加密等其他方法见:Crypto模块官方文档
- Process 全局变量
[javascript]
<span style="font-family: Georgia, ‘Times New Roman’, ‘Bitstream Charter’, Times, serif; font-size: 13px; line-height: 19px;">console.log(‘版本号是:’, process.version);</span></pre>
console.log(‘运行平台是:’, process.platform);
console.log(‘当前进程已运行的时间:’, process.uptime());
// 捕获进程信号量
// 输入
console.log(‘输入你的姓名:’);
// 激活进程输入
process.stdin.resume();
// 设置编码
process.stdin.setEncoding(‘utf8’);
var body = ‘’;
// 监听
process.stdin.on(‘data’, function (chunk) {
body += chunk;
// process.stdout.write(‘数据传输中…’ + chunk);
});
process.stdin.on(‘end’, function () {
process.stdout.write(‘你好,’ + body);
});
// 监听
process.on(‘SIGINT’, function () {
console.log(‘捕获到SIGINT事件,按 ctrl+D 退出’);
})
// 监听进程退出
process.on(‘exit’, function () {
console.log(‘监听到进程退出’);
})
<pre>[/javascript]
更多方法见:Process 进程