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])。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
