创建socket对象,连接socket,然后发送数据
var net = require('net')
// 1. 创建socket对象
var client = new net.Socket()
// 2. 连接通信
// HOST:要连接的地址
// PORT:要连接的对象给的端口
client.connect(PORT, HOST, function () {
log.info('Connected to ' + HOST + ':' + PORT)
})
// 3. 监听连接对象返回的数据data
client.on('data', function (data) {
console.log(data)
}
// 4. 监听连接错误
client.on('error', function (error) {
log.info(error)
log.error('Fail connected to ' + HOST + ':' + PORT)
})
// 5. 监听连接关闭
client.on('close', function () {
log.info('Connection closed ' + HOST + ':' + PORT)
})
// 6. 发送数据
client.write(res)
二进制操作
// 1. 字符串转二进制
function strtobuffer(data){
data = data.toString()
var buf = new Buffer(data)
return buf
}
// 2. number转四位数的二进制
function numberto (num) {
var arr = new ArrayBuffer(4); // an Int32 takes 4 bytes
var view = new DataView(arr);
view.setUint32(0, num, false); // byteOffset = 0; litteEndian = false
var buf = Buffer(arr)
return buf;
}
// 3. 两个Buffer对象拼接
var newBuf = Buffer.alloc(Buf1.length + Buf2.length)
Buf1.copy(newBuf, 0, 0)
Buf2.copy(newBuf, Buf1.length, 0)
Node.js使用CRC32加密数据
const CRC32 = require('crc-32')
// Buffer对象
buf_code = CRC32.buf(newBuf)
// 字符串对象
str_code = CRC32.str(str1)