小记

这里有篇讲WebRTC获取内网IP的方法
https://www.jianshu.com/p/8d7348bc84f4

不同浏览器开启WebRTC的方法:
https://www.yu1u.org/1Iibb_VYx/

WebRTC的官方说明:
https://developer.mozilla.org/zh-CN/docs/Web/API/WebRTC_API

这里一篇:
https://blog.csdn.net/u011118482/article/details/104848709/

function local_ip(){
    var $mytimeout;
    if ( window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection ){
        $mytimeout = setTimeout(function(){document.getElementById('list').innerHTML ="Local IP address is not supported in this browser";},3000);
        window.RTCPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;
        var $pc = new RTCPeerConnection({iceServers:[]}), 
            $noop = function(){};      
        $pc.createDataChannel("");
        $pc.createOffer($pc.setLocalDescription.bind($pc), $noop);
        $pc.onicecandidate = function($ice){
            clearTimeout($mytimeout);
            if(!$ice || !$ice.candidate || !$ice.candidate.candidate)  return;
            console.log($ice.candidate);

            $ip = /([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];
            $pc.onicecandidate = $noop;
            document.getElementById('list').innerHTML = $ip;
        };
    }
    else{
        document.getElementById('list').innerHTML = "-";
    }
}

html:

IP is: <h1 id=list>-</h1> 

此方法会将本地ip显示到h1标签中
使用谷歌浏览器,按照上述博客进行设置
效果:
在这里插入图片描述如果是火狐浏览器:按照下面方式操作:
在这里插入图片描述

再就是通过搜狐、腾讯的接口打印外网ip

js使用cookie
https://www.cnblogs.com/YanSmallKind/p/11274850.html

笔记

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐