Node.js 获取连接到本地Express服务器的系统的IP
我使用Express创建了一个简单的Web应用程序。当我的Express Node服务器运行时,我可以从与我连接到同一WiFi网络的设备(系统除外)访问应用程序。Node.js 获取连接到本地Express服务器的系统的IP,node.js,express,Node.js,Express,我使用Express创建了一个简单的Web应用程序。当我的Express Node服务器运行时,我可以从与我连接到同一WiFi网络的设备(系统除外)访问应用程序。 我如何知道哪个设备访问了我的网站?我可以获得由我的路由器分配的用户的私有IP地址吗?您可以使用请求对象的IP属性,如下所示 下面是如何发送请求的IP const express = require('express') const app = express() app.get('/', (req, res) => res.s
我如何知道哪个设备访问了我的网站?我可以获得由我的路由器分配的用户的私有IP地址吗?您可以使用
请求
对象的IP
属性,如下所示
下面是如何发送请求的IP
const express = require('express')
const app = express()
app.get('/', (req, res) => res.send(req.ip));
app.listen(80, () => console.log('Example app listening on port 80!'))
我使用此代码获取系统的ipv4地址和物理地址。希望这有帮助
var os = require('os');
var on=os.networkInterfaces();
var o=JSON.stringify(on);
var obj = JSON.parse(o); // this is how you parse a string into JSON
var n=JSON.stringify(obj['Wi-Fi']); //use "Wi-Fi" for windows system and "wlp3s0" for LINUX systems
var nn=JSON.parse(n);
var n2=JSON.stringify(nn[0].mac);
var n3=JSON.stringify(nn[1].address);
console.log("Physical Address: " +n2);
console.log("IP Address : ",n3);
我有一个疑问,那就是是否有可能获得使用这个RESTAPI的实际用户IP。例如,我有一个api,我想知道这个api调用发生在哪里?根据ur代码,它返回xx个api。但我想要实际的IP,比如192.168。很抱歉,我做了编辑。我在回答中错误地写了
hostname
。它返回的响应是::1。那个么它将是系统的IP地址吗?::1
是IPv6中的本地主机
,我如何获得ipv4地址?