如何在JavaScript中获取客户端IP地址?
我正在尝试获取客户端的IP地址。这是到目前为止我的代码。 有什么建议吗如何在JavaScript中获取客户端IP地址?,javascript,Javascript,我正在尝试获取客户端的IP地址。这是到目前为止我的代码。 有什么建议吗 函数getIP(json){ 编写(“我的公共IP地址是:”,json.IP); } 请尝试以下代码:- Ip地址:= $(文档).ready(函数ubsrt() { window.rtpeerconnection=window.rtpeerconnection | | window.mozrtpeerconnection | | window.webkirtpeerconnection; var pc=新的RTPe
函数getIP(json){
编写(“我的公共IP地址是:”,json.IP);
}
请尝试以下代码:-
Ip地址:=
$(文档).ready(函数ubsrt()
{
window.rtpeerconnection=window.rtpeerconnection | | window.mozrtpeerconnection | | window.webkirtpeerconnection;
var pc=新的RTPeerConnection({iceServers:[]}),
noop=函数(){};
pc.createDataChannel(“”);
pc.createOffer(pc.setLocalDescription.bind(pc),noop);
pc.onicecandidate=函数(ice){
如果(!ice | | |!ice.candidate | |!ice.candidate.candidate)返回;
var myIP=/([0-9]{1,3}(\[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/.exec(ice.candidate.candidate)[1];
$('.ipAdd').text(myIP);
pc.onicecandidate=noop;
};
});
试试这个。对你有点帮助
<script type="application/javascript">
function getIP(json) {
document.write("My public IP address is: ", json.ip);
}
</script>
<script type="application/javascript" src="http://ipinfo.io/?format=jsonp&callback=getIP"></script>
函数getIP(json){
编写(“我的公共IP地址是:”,json.IP);
}
返回的JSON变量可以像javascript中的任何对象一样进行导航
函数getIP(json){
document.getElementById(“text”).value=JSON.stringify(JSON,null,2);
for(输入json){
document.write(“
”+key+:”,json[key]);
}
}
试试这个
$.ajax({
url: "//api.ipify.org/?format=json",
dataType: 'JSON',
}).success(function(data) {
console.log(data.ip);
}).error(function (jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
});
如何使用angular获取当前ip地址? 请参阅以下连结:
或
getIpAddress(){
this.http.get('https://jsonip.com')
.订阅(数据=>{
console.log('th data',data);
this.ipAddress=数据
})
}
您的代码非常好。(您错误地使用了这么多代码片段,您的代码是“JavaScript”,但需要是“HTML”,所以我为您修复了它。)到目前为止,我看到的所有答案的可能重复都使用了外部链接。但您的答案不包含任何第三方url。。。你知道如何在角度上做到这一点吗?这应该被标记为正确答案。不需要任何外部网络呼叫。感谢上面的代码给了我下面一行的“uncaughttypeerror:cannotreadproperty'1'of null:var myIP=/([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/.exec(ice.candidate candidate 1]
我尝试调试并发布此命令的全部内容,发现数组的元素[1]是“”/()/.exec(ice.candidate.candidate)代码>输出:(2)[“”,“”,索引:0,输入:“候选:119889386 1 udp 2113937151 98dff370-ffe5…典型主机生成0 ufrag gNsA网络成本999”,组:未定义]我仅在Chrome上获得上述错误。代码正在Firefox上运行json指的是什么?http://freegeoip.net/json/?callback
现在似乎不可用检查更新的答案。
$.ajax({
url: "//api.ipify.org/?format=json",
dataType: 'JSON',
}).success(function(data) {
console.log(data.ip);
}).error(function (jqXHR, textStatus, errorThrown) {
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
});
OR
getIpAddress(){
this.http.get<{ip:string}>('https://jsonip.com')
.subscribe( data => {
console.log('th data', data);
this.ipAddress = data
})
}