【发布时间】:2020-12-21 10:26:18
【问题描述】:
我正在寻找一种在 Angular 7 或更高版本中获取 IPv4 地址的方法。我需要通过本地 IP 地址识别在浏览器中打开应用程序的用户,因为公共 IP 通常对于一家公司的所有用户都是相同的。
我在link 上尝试了这个示例以及更多其他示例,但到目前为止还没有成功。你对我有什么想法吗?有可能吗?
提前致谢!
【问题讨论】:
标签: angular typescript browser ip ipv4
我正在寻找一种在 Angular 7 或更高版本中获取 IPv4 地址的方法。我需要通过本地 IP 地址识别在浏览器中打开应用程序的用户,因为公共 IP 通常对于一家公司的所有用户都是相同的。
我在link 上尝试了这个示例以及更多其他示例,但到目前为止还没有成功。你对我有什么想法吗?有可能吗?
提前致谢!
【问题讨论】:
标签: angular typescript browser ip ipv4
你不能只用 ng 做到这一点。您需要访问加载页面角度的请求对象。为此,您需要编写一些服务器代码。
如果您使用的是 node.js,请尝试使用 geoip-lite,然后编写一个使用 x-forwarded-for 标头的 GET 端点,并通过 req.connection.remoteAddress.split(":")[3] 使用请求者的 ip 作为回退
然后您可以通过
将该结果返回给 ng 应用程序const ip = xForwadedFor || remoteIP;
const geo = geoip.lookup(ip);
那么你需要通过ng的http服务来消费GET端点的结果。
【讨论】: