如何在Angular 2组件中使用require('os')获得IP地址?

时间:2018-07-18 14:49:44

标签: node.js angular requirejs

我需要以下条件:https://nodejs.org/api/os.html, 这样我就可以从Angular组件中访问IP地址等。

以下内容不起作用:

 const os = require("os");

我登录os时,只会得到空值:

{endianness: ƒ, hostname: ƒ, loadavg: ƒ, uptime: ƒ, freemem: ƒ, …}
EOL
:
"↵"
arch
:
ƒ ()
cpus
:
ƒ ()
endianness
:
ƒ ()
freemem
:
ƒ ()
getNetworkInterfaces
:
ƒ ()
homedir
:
ƒ ()
hostname
:
ƒ ()
loadavg
:
ƒ ()
networkInterfaces
:
ƒ ()
platform
:
ƒ ()
release
:
ƒ ()
tmpDir
:
ƒ ()
tmpdir
:
ƒ ()
totalmem
:
ƒ ()
type
:
ƒ ()
uptime
:
ƒ ()
__proto__
:
Object

在我的Node Express Server中,一切正常运行,我可以按预期使用操作系统。

编辑:如果这样做不起作用,还有其他方法可以获取IP地址和体系结构吗?

Edit2:要求:我无法拨打任何外部网站的电话来获取我的IP地址

2 个答案:

答案 0 :(得分:2)

据我所知,操作系统模块与浏览器不兼容。您可以改用sniffr在客户端获取类似信息。

答案 1 :(得分:0)

我找到了一个非常简单的解决方案来满足我的特定要求,我想与他人分享以帮助处于类似情况的人:

使用window对象,我无需添加任何程序包即可获取所有信息

ipAddress = window.location.host

可以在这里https://www.w3schools.com/jsref/obj_window.asp

找到文档