第二中方式获取IPv4地址
可以通过向第三方服务发送HTTP请求来实现。一个常用的服务是ipify.org,它提供了一个简单的API来获取用户的公网IP地址。你可以使用JavaScript中的fetch函数或其他HTTP请求库来发送请求并获取IP地址。下面是一个示例代码:
javascript插入代码复制代码
fetch('https://api.ipify.org?format=json')
.then(response => response.json())
.then(data => {
const ipAddress = data.ip;
console.log('IPv4地址:', ipAddress);
// 在这里可以将IPv4地址用于后续的操作
})
.catch(error => {
console.error('获取IP地址时出错:', error);
});
这段代码发送一个GET请求到ipify.org的API,并以JSON格式返回IP地址。然后,你可以从返回的数据中提取IP地址并进行后续操作。请注意,使用第三方服务来获取IP地址可能会受到服务可用性和隐私政策的限制。确保你了解并遵守相关服务的使用条款和隐私政策
第二中方式获取IPv4地址
<script type="application/javascript">
function getIP(json) {
console.log('ipify获取到的网络IP', json.ip);
}
</script>
<script type="application/javascript" src="https://api.ipify.org?format=jsonp&callback=getIP"></script>
判断用户客户端是否支持IPv6策略
function isIPv6Enabled() {
return new Promise((resolve) => {
if (window.RTCIceCandidate) {
const pc = new RTCPeerConnection({ iceServers: [] });
pc.createDataChannel('');
pc.createOffer()
.then((offer) => {
const hasIPv6 = offer.sdp.includes('IP6');
resolve(hasIPv6);
pc.close();
})
.catch((error) => {
console.error('Error creating offer:', error);
resolve(false);
});
} else {
resolve(false);
}
});
}
isIPv6Enabled().then((enabled) => {
if (enabled) {
console.log('用户启用了IPv6');
} else {
console.log('用户未启用IPv6');
}
});