📅  最后修改于: 2023-12-03 15:17:55.101000             🧑  作者: Mango
new Agent()
方法是 Node.js 提供的用于创建 HTTP(S) 代理的构造函数。代理是位于客户端和服务器之间的中间服务器,它充当两者之间的中介并转发请求和响应。Node.js 的 Agent
类负责管理与服务器的连接池,以便更有效地处理网络请求。
new Agent(options)
方法会返回一个新的 Agent
实例。可选的 options
参数允许您配置代理的行为。以下是常用的选项:
keepAlive
:一个布尔值,指示是否保持与服务器的连接以进行复用,默认为 true
。keepAliveMsecs
:一个数字,指定空闲连接保持的最长毫秒数,默认为 1000。maxSockets
:一个数字,指定允许的最大并发套接字数量,默认为 Infinity。maxFreeSockets
:一个数字,指定允许的最大空闲套接字数量,默认为 256。timeout
:一个数字,指定套接字超时的毫秒数,默认为 0,表示不设置超时。以下是创建和使用 Agent
实例的示例代码:
const http = require('http');
// 创建 HTTP 代理
const agent = new http.Agent({
keepAlive: true,
keepAliveMsecs: 1000,
maxSockets: 10,
maxFreeSockets: 5
});
// 发送 HTTP 请求
http.get({
hostname: 'www.example.com',
port: 80,
path: '/',
method: 'GET',
agent: agent // 指定使用代理对象
}, (res) => {
// 处理响应
});
在上面的示例中,我们通过指定 agent
选项将 Agent
实例传递给 http.get()
方法。这样做可以确保请求复用与服务器的连接,以提高性能和效率。
new Agent()
方法是 Node.js 提供的用于创建 HTTP(S) 代理的构造函数。通过配置代理的选项,您可以更好地管理与服务器的连接池,并提高网络请求的性能。使用代理对象是一种优化网络请求的常见方法。
详细文档,请参阅 Node.js 官方文档。