Node.js 中的 agent.createConnection() 方法
node.jsjavascriptweb developmentfront end technology
agent.createConnection() 方法是 'http' 模块提供的接口。此方法生成可用于 HTTP 请求的套接字/流。可以使用自定义代理覆盖此方法以获得更大的灵活性。套接字/流可以通过两种方式返回 - 要么直接从此函数返回套接字/流,要么将此套接字/流传递给回调。
语法
agent.createConnection(options, [callback])
参数
上述函数可以接受以下参数 −
options –这些选项将包含必须为其创建流的连接详细信息。
callback – 这将从代理接收创建的套接字连接。
示例
创建一个名为 – connection.js 的文件并复制以下代码片段。创建文件后,使用以下命令运行此代码,如下例所示 −
node connection.js
connection.js
// Node.js 程序演示套接字的创建 // 使用 agent.createConnection() 方法 // 导入 http 模块 const http = require('http'); // 创建新代理 var agent = new http.Agent({}); // 使用上述代理创建连接 var conn = agent.createConnection; console.log('连接已成功创建 !'); // 打印连接详细信息 console.log('连接:',conn);
输出
C:\home
ode>> node connection.js 连接已成功创建 ! Connection: function connect(...args) { var normalized = normalizeArgs(args); var options = normalized[0]; debug('createConnection', normalized); var socket = new Socket(options); if (options.timeout) { socket.setTimeout(options.timeout); } return socket.connect(normalized); }
示例
我们再看一个例子。
// Node.js 程序演示套接字的创建 // 使用 agent.createConnection() 方法 // 导入 http 模块 const http = require('http'); // 创建新代理 var agent = new http.Agent({}); // 定义代理选项 const aliveAgent = new http.Agent({ keepAlive: true, maxSockets: 0, maxSockets: 5, }); // 创建与活动代理的连接 var aliveConnection = aliveAgent.createConnection; // 创建新连接 var connection = agent.createConnection; // 打印连接 console.log('已成功创建与代理的连接:', connection.toString); console.log('已成功创建与活动代理的连接:', aliveConnection.toString);
输出
C:\home
ode>> node connection.js 成功与代理创建连接:function toString() { [native code] } 成功与活动代理创建连接:function toString() { [native code] }