如何通过公共ip地址访问node.js服务器

如何通过公共ip地址访问node.js服务器,node.js,Node.js,我一直在尝试使用nodeJS和socket.io制作一个在线多人游戏。我可以通过localhost:3000来测试我的网站,但现在我希望我的朋友也能访问它 var express = require('express'); var app = express(); var server = require('http').Server(app); var io = require('socket.io')(server, {}); server.listen(3000); 我如何使其他人可以使

我一直在尝试使用nodeJS和socket.io制作一个在线多人游戏。我可以通过localhost:3000来测试我的网站,但现在我希望我的朋友也能访问它

var express = require('express');
var app = express();
var server = require('http').Server(app);
var io = require('socket.io')(server, {});
server.listen(3000);
我如何使其他人可以使用我在上找到的公共IP地址访问我的网站,例如[external IP]:3000

我尝试使用ngrok,但速度非常慢,每30毫秒发出一次数据的socket.io超过了ngrok的限制。此外,我不想使用任何DNS或其他插件,我只希望它是简单的

我正在使用Mac OS,因此默认情况下禁用防火墙

这是我的端口转发页面:(我的本地IP是192.168.1.50) 我做得对吗?我曾尝试过用游戏进行端口转发,但效果很好,所以我认为这不是我的路由器。

如果您确定路由器没有问题,那么您可以尝试侦听
0.0.0.0
,这意味着您将侦听外部和内部IP地址

server.listen(3000,“0.0.0.0”)

此外,您还需要检查您的Brandmauer或防火墙