socket.connect(options[, connectListener])
历史
版本 | 变化 |
---|---|
v17.7.0 | 现在支持 |
v12.10.0 | 添加了 |
v6.0.0 |
|
v5.11.0 | 现在支持 |
v0.1.90 | 添加于:v0.1.90 |
参数
options
<Object>connectListener
<Function>socket.connect()
'connect'
- 返回: <net.Socket> 套接字本身。
在给定的套接字上启动连接。通常不需要此方法,应使用
创建和打开套接字。仅在实现自定义 Socket 时使用。net.createConnection()
对于 TCP 连接,可用的options
是:
port
<number> 必需。套接字应连接的端口。host
<string> 套接字应连接的主机。 默认:'localhost'
。localAddress
<string> 套接字应该连接的本地地址。localPort
<number> 套接字应该连接的本地端口。family
<number> :IP 堆栈的版本。必须是4
、6
或0
。值0
表示允许 IPv4 和 IPv6 地址。 默认:0
。hints
<number>可选的dns.lookup()
提示.lookup
<Function> 自定义查找函数。 默认:dns.lookup()
noDelay
<boolean> 如果设置为true
,它将在套接字建立后立即禁用 Nagle 算法。 默认:false
。keepAlive
<boolean> 如果设置为true
,它会在连接建立后立即在套接字上启用 keep-alive 函数,与socket.setKeepAlive([enable][, initialDelay])
false
。keepAliveInitialDelay
<number> 如果设置为正数,它会设置在空闲套接字上发送第一个保活探测之前的初始延迟。 默认:0
。
对于IPC 连接,可用的options
有:
path
<string> 必需。客户端应连接的路径。请参阅Identifying paths for IPC connections。如果提供,则忽略上面的 TCP-specific 选项。
对于这两种类型,可用的options
包括:
onread
<Object>如果指定,传入数据存储在单个buffer
并传递给提供的callback
当数据到达套接字时。这将导致流函数不提供任何数据。套接字将发出类似的事件'error'
,'end'
, 和'close'
照常。方法如pause()
和resume()
也将按预期运行。buffer
<Buffer> | <Uint8Array> | <Function> 用于存储传入数据的可重用内存块或返回此类数据的函数。callback
<Function> 为每个传入数据块调用此函数。向它传递了两个参数:写入buffer
的字节数和对buffer
的引用。从此函数返回false
到隐式pause()
套接字。该函数将在全局上下文中执行。
以下是使用 onread
选项的客户端示例:
const net = require('node:net');
net.connect({
port: 80,
onread: {
// Reuses a 4KiB Buffer for every read from the socket.
buffer: Buffer.alloc(4 * 1024),
callback: function(nread, buf) {
// Received data is available in `buf` from 0 to `nread`.
console.log(buf.toString('utf8', 0, nread));
}
}
});
相关用法
- Node.js socket.connect()用法及代码示例
- Node.js socket.bind()用法及代码示例
- Node.js socket.setRecvBufferSize()用法及代码示例
- Node.js socket.getSendBufferSize()用法及代码示例
- Node.js socket.setBroadcast()用法及代码示例
- Node.js socket.ref()用法及代码示例
- Node.js socket.addMembership()用法及代码示例
- Node.js socket.unref()用法及代码示例
- Node.js socket.setMulticastLoopback()用法及代码示例
- Node.js socket.send()用法及代码示例
- Node.js socket.setTTL()用法及代码示例
- Node.js socket.address()用法及代码示例
- Node.js socket.setMulticastTTL()用法及代码示例
- Node.js socket.setMulticastInterface()用法及代码示例
- Node.js socket.remoteAddress()用法及代码示例
- Node.js socket.getRecvBufferSize()用法及代码示例
- Node.js socket.dropMembership()用法及代码示例
- Node.js socket.setSendBufferSize()用法及代码示例
- Node.js sort()用法及代码示例
- Node.js stream.Writable.uncork()用法及代码示例
- Node.js split()用法及代码示例
- Node.js stream.Readable.take(limit[, options])用法及代码示例
- Node.js serverhttp2session.origin()用法及代码示例
- Node.js stream.Readable.pipe(destination[, options])用法及代码示例
- Node.js stats.ctimeMs属性用法及代码示例
注:本文由纯净天空筛选整理自nodejs.org大神的英文原创作品 socket.connect(options[, connectListener])。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。