使用请求维护开放会话

时间:2016-12-10 20:21:21

标签: node.js node-request

我对此很新......

我有以下代码:

request("http://somePythonServer.com?param1=1&param2=2", function (err, response, body) {
      if (err){
         console.error(err);
         next(err);
      }
      console.log("Response Ended - SUCCESS");
});

每次使用不同的参数和值进行此请求时,每次运行时都会打开一个新连接。

我的问题是如何保持开放式连接?

编辑:我可以控制请求的发送和接收端。

我的目标: 我正在尝试提高两台服务器之间的速度(NodeJS将HTTP GET发送到python简单的HTTP服务器)我希望这两者之间的连接始终保持打开状态,以便请求尽可能快。

1 个答案:

答案 0 :(得分:-1)

如果您的问题是关于使用HTTP keep-alive

然后你必须在HTTP代理中保持活着状态 它将在每个请求上重用连接。 也许这样的事情会帮助你

https://github.com/node-modules/agentkeepalive

如果您的问题是关于保持会话: 然后你必须每隔几分钟打电话。

你需要一个饼干罐

请参阅https://github.com/request/request(在页面Cookie上搜索)

它说:

默认情况下禁用Cookie(否则,它们将在后续请求中使用)。要启用cookie,请将jar设置为true(默认值或选项中)。

var request = request.defaults({jar: true})
request('http://www.google.com', function () {
  request('http://images.google.com')
})

还有更多与cookies相关的选项

会话只是一个带有会话ID的cookie