脚本宝典收集整理的这篇文章主要介绍了Node.js学习之路11——创建TCP客户端,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
1. 创建TCP客户端
const net = require('net');
let socket = new net.Socket([options]);
options
对象与TCP服务器的options
参数属性一样
socket.connect(port, [host], [connectListener])
-
socket.connect(path, [connectListener]);
此时socket端口有下边的几个属性
-
remoteAddress
:连接另一端所使用的远程地址
-
remotePort
:连接另一端所使用的端口号
-
localAddress
:本地用于建立连接的地址
-
localPort
:本地用于建立连接的端口号
socket
端口对象可以被用来写入向客户端或服务器端发送的流数据,当流数据被写入后将立即发送到客户端或服务器.当需要写入流数据时,使用socket
端口对象的write
方法
* `socket.write(data, [encoding], [callback]);`该回调函数不需要参数
在一个快速的网络中,当数据量较少的时候,Node.js总是将数据直接发送到操作系统专用于发送数据的TCP缓存区中,然后从该TCP缓存区中取出数据发送个对象.在一个慢速的网络中或者需要发送大量数据的时,TCP客户端或服务器所发送的数据并不一定会立即被对方所接收,在这种情况下,Node.js会将这些数据缓存在缓存队列中,在对方可以接收数据的情况下降缓存队列中的数据通过TCP缓存区发送给对象.socket
端口对象的write
方法返回一个布尔类型值,饭改数据直接被发送到TCP缓存区中时,该返回值为true
,当数据首先被发送到缓存队列时,该返回值为false
.当返回值为false
且TCP缓存区中的数据已全部发送出去时,触发drain
事件.
2. 一个基本的TCP客户端
// 创建TCP客户端
const net = require('net');
let client = new net.Socket();
client.setEncoding('utf8');
client.connect('2596', 'localhost', function () {
console.log('已连接到服务器');
client.write('hello, this is a tcp server');
setTimeout(function () {
client.end('byebye');
}, 10000)
});
client.on('data', function (data) {
console.log('已接收服务器端发送的数据:' + data);
});
client.on('error', function (err) {
console.log(err);
client.destroy();
});
以上是脚本宝典为你收集整理的Node.js学习之路11——创建TCP客户端全部内容,希望文章能够帮你解决Node.js学习之路11——创建TCP客户端所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。