【问题标题】:Why can i not connect to NodeJS express server from any network?为什么我无法从任何网络连接到 NodeJS express 服务器?
【发布时间】:2021-01-14 09:50:19
【问题描述】:

假设我有一个在端口 3001 上运行的 Web 服务器,我的 ip 是 23.512.531.56(不是实际的 ip 地址顺便说一句),如果我输入 chrome @987654321,我会进入另一个网络,比如我的邻居之类的东西@为什么我不能从服务器得到响应?这是我的 nodeJS 代码。

//"Imports" libraries reqired.

const express = require("express");
const fs = require("fs");

//Starts express

const svr = express();

//Main

svr.get("/", (req, res)=>{
    fs.createReadStream("./html/index.html").pipe(res);
});

svr.get("/image0.png", (req, res) => {
    fs.createReadStream("./html/image0.png").pipe(res);
});

//Sets port to host on

svr.listen(3001);

【问题讨论】:

  • 必须对外开放3001端口并绑定到本地机器(端口转发)。看看你的路由器!如果不是固定 IP,请使用 DynDNS 服务。
  • 很高兴。

标签: javascript node.js express networking ip


【解决方案1】:

您需要在同一个网络中。例如,如果您使用不同的 wifi(来自您的邻居),您将无法访问您的本地 NodeJs 服务器。如果您的设备在相同的默认网关下,您可以访问您的服务器。

如果您想从任何网络访问它,您可能希望将其部署到全球网络。

补充一点,即使是为了说明,也不要使用不正确的 IP 地址

【讨论】:

  • 23.512.531.56 是不是本地的公共 IP,如果是,则邻居也必须在同一网络中。
【解决方案2】:

您必须向外部开放端口 3001 并绑定到您的本地计算机(端口转发)。看看你的路由器!如果不是固定 IP,请使用 DynDNS 服务。

【讨论】:

    猜你喜欢
    • 2016-03-07
    • 2023-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    • 2021-09-08
    相关资源
    最近更新 更多