Javascript 如何在加载和连接到套接字时不公开服务器信息

Javascript 如何在加载和连接到套接字时不公开服务器信息,javascript,sockets,socket.io,Javascript,Sockets,Socket.io,我有一个drupal站点,它通过套接字与Node.js服务器进行通信,因此我在头文件中加载并发送以下连接请求: <script src="http://xx.xx.xx.xx:3000/socket.io/socket.io.js"></script> ... socket = io.connect('http://xx.xx.xx.xx:3000'); ... 套接字=io.connect('http://xx.xx.xx.xx:3000'); 然而,这很有

我有一个drupal站点,它通过套接字与Node.js服务器进行通信,因此我在头文件中加载并发送以下连接请求:

 <script src="http://xx.xx.xx.xx:3000/socket.io/socket.io.js"></script>
... 
socket = io.connect('http://xx.xx.xx.xx:3000');

... 
套接字=io.connect('http://xx.xx.xx.xx:3000');
然而,这很有效。我更喜欢我的服务器ip,端口号不向世界其他地方公开。这样做的方法是什么?谢谢

简短的回答是:

您不能这样做。

较长的解释:

您的
socket.io
连接与其他与服务器的连接类似。它将始终在任何其他浏览器的开发人员工具中可见。您可能希望为此使用代理服务,但最终您的
socket.io
服务器将始终公开

如果想获得你的
socket.io
IP地址,没有人会读你的JS代码,还有很多其他更简单的方法

尽管您始终可以使用socket.io的
自动连接
功能,只需将

socket = io.connect();

呃。。。使用您的FQDN?如果您没有,请注册一个并将其DNS到该IP地址隐藏您的IP和端口对您没有任何帮助。我不会担心的。如果你不给他们你的服务器ip和端口,他们将无法访问你。很简单:不要把一个网站放到网上,一切都会好的。谢谢你,巴特。Bergi,有没有可能你的界面(比如drupal站点)与其他应用程序(比如Node.js)连接在一起,你不想让它暴露出来。。。