美文网首页程序员React Native学习
react native 获取设备 真实ip地址 和 ip 映射

react native 获取设备 真实ip地址 和 ip 映射

作者: JsLin_ | 来源:发表于2018-08-27 20:51 被阅读50次

react-native-device-info 这个组件的最新版本0.22.5 能获得 手机的ip地址 和mac地址 但是 获取不了手机的真实ip地址,下面通过另外中方式抓取手机真实ip地址

这里通过webview的方式获取的,接口地址http://whois.pconline.com.cn(这个网站的稳定性 不太清楚)

webView相关代码 大家可作为参考

<!-- 这里用的是太平洋电脑的接口 不知道稳定性
getJson({
    "ip":"xxxxxxxxxx",
    "pro":"广东省",
    "proCode":"440000",
    "city":"深圳市",
    "cityCode":"440300",
    "region":"",
    "regionCode":"0",
    "addr":"广东省深圳市 移通",
    "regionNames":"",
    "err":""
})
-->

<!DOCTYPE html>
<html>

<head>
    <meta charset="UTF-8">
</head>

<body>

</body>
<script>
    // (function () {


    // })();
    function getJson(obj) {
        //需要ip地址, IP映射的物理地址  
        var originalPostMessage = window.postMessage;

        var patchedPostMessage = function (message, targetOrigin, transfer) {
            originalPostMessage(message, targetOrigin, transfer);
        };

        patchedPostMessage.toString = function () {
            return String(Object.hasOwnProperty).replace('hasOwnProperty', 'postMessage');
        };

        window.postMessage = patchedPostMessage;
        var ObjString = JSON.stringify(obj);
        setTimeout(()=>{
            window.postMessage(ObjString)
        },2000)
     
    }
</script>
<script src="http://whois.pconline.com.cn/ipJson.jsp?callback=getJson"></script>

</html>

相关文章