【发布时间】:2020-11-24 03:37:58
【问题描述】:
我一直在尝试将我的 windows labtop 中的 express.js 服务器托管到我的局域网上,以便路由器上的其他设备也可以访问该站点,这是我的麻烦:
let express = require("express")
let app = express()
app.get("/", (req, res) => {
res.send("Hello")
})
app.listen(80, "the ip I got")
我知道所有这些代码都是正确的,但是我将 ip 放入listen(),我如何获取我的 ip 是我要去 cmd.exe 并输入 ipconfig,然后我正在使用“IPv4 地址”下列出的地址。如果有人可以帮助我获得正确的 IP 地址来托管在我的局域网上,那就太好了。
当我在该地址上托管服务器时,它充当本地主机,并且当我在浏览器中访问 IP 地址时工作,但不适用于连接到路由器的其他设备。
【问题讨论】:
-
尝试使用 ip
0.0.0.0监听所有设备,同时检查您的 Windows 防火墙或路由器是否不会阻止到您机器的流量。我假设您可以绑定到端口 80,但是尝试将端口更改为大于 1024 的端口,例如 3000 并检查它是否有任何改变。 -
@Anastazy 我已将端口更改为 3000,监听 0.0.0.0 没有任何错误。我使用什么 IP 地址连接到我的 express 服务器?
-
0.0.0.0地址只是意味着您的服务器绑定并侦听所有可用接口,因此请使用路由器分配给该计算机的 IP 地址(通常 DHCP 服务器会自动分配 IP 地址)。如您所说,您可以使用 IPv4 部分中的ipconfig命令检查 IP(如果您有多个网卡,请确保您正在查看正确的接口)。您还可以在路由器设置中检查分配给设备的 IP 地址(通常您可以通过在浏览器中输入 192.168.1.1 来登录路由器)。
标签: node.js express networking