节点JS TCP代理:在回调函数中重用套接字

时间:2015-05-10 02:35:41

标签: node.js networking tcp proxy event-handling

我试图在Node JS中实现TCP代理。我只有一些Javascript经验,所以我遇到了很多问题。我已经做了很多寻找这个,但没有运气。

当浏览器发送HTTPS的CONNECT请求时,会出现此问题。我的代理将解析主机名和端口,然后创建一个连接到服务器的新套接字。如果所有这些步骤顺利,我将开始转发消息。

我的部分代码如下所示:

3.86

由于CONNECT请求需要打开客户端套接字和服务器套接字,直到一方关闭连接,上面的代码才会出现这种情况。每次我从客户端收到一些数据时,我都会创建一个新的服务器套接字,旧服务器将关闭。

有没有办法将服务器套接字存储为全局变量,以便数据事件处理程序可以重用它?或者还有其他方法可以解决这个问题吗?

非常感谢!!!!

1 个答案:

答案 0 :(得分:1)

您可以将变量移动到更高的范围,以便它可以在多个事件中存活,然后您可以测试它的值是否已存在:

i