javascript 中获取 ip 地址的方法有两种:获取公共 ip 地址 (fetch(‘https://api.ipify.org?format=json’)…) 和获取本地 ip 地址 (function getlocalip() {…})。获取公共 ip 地址需要启用 cors,而获取本地 ip 地址可能会因客户端禁用或浏览器出于隐私考虑阻止而失败。

获取 IP 地址的 JavaScript 方法
获取客户端的 IP 地址对于网络应用和分析至关重要。在 JavaScript 中,有几种方法可以实现此目的。
获取公共 IP 地址
要获取客户端的公共 IP 地址(即从互联网上可见的 IP 地址),可以使用以下代码:
fetch('https://api.ipify.org?format=json')
.then((res) => res.json())
.then((data) => console.log(data.ip))
.catch((error) => console.error(error));
登录后复制
获取本地 IP 地址
要获取客户端的本地 IP 地址(即在本地网络上可见的 IP 地址),可以使用以下代码:
function getLocalIP() {
const interfaces = require('os').networkInterfaces();
for (const name in interfaces) {
for (const address of interfaces[name]) {
if (
address.family === 'IPv4' &&
!address.internal &&
address.address !== '127.0.0.1'
) {
return address.address;
}
}
}
return undefined;
}
登录后复制
注意事项
- 使用 fetch() API 获取公共 IP 地址需要启用 CORS。
- 客户端可能禁用对本地 IP 地址的访问。
- 出于隐私考虑,某些浏览器可能会阻止获取本地 IP 地址。
以上就是如何通过js获取ip的详细内容,更多请关注米云其它相关文章!
