查询本地IP地址vue

在这里插入图片描述

Google:chrome://flags/#enable-webrtc-hide-local-ips-with-mdns
Edge:edge://flags/#enable-webrtc-hide-local-ips-with-mdns
getIp() {
      if (typeof window != "undefined") {
        var RTCPeerConnection =
          window.RTCPeerConnection ||
          window.mozRTCPeerConnection ||
          window.webkitRTCPeerConnection;

        if (RTCPeerConnection)
          (() => {
            var rtc = new RTCPeerConnection();
            rtc.createDataChannel(""); //创建一个可以发送任意数据的数据通道
            rtc.createOffer(
              (offerDesc) => {
                //创建并存储一个sdp数据
                rtc.setLocalDescription(offerDesc);
              },
              (e) => {
                console.log(e);
              }
            );

            rtc.onicecandidate = (evt) => {
              //监听candidate事件
              if (evt.candidate) {
                let ip_rule = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/;
                // 判断ip_addr是否获取成功
                if (ip_rule.exec(evt.candidate.candidate)) {
                  this.address.ip = ip_rule.exec(evt.candidate.candidate)[1];
                } else {
                  // 引导用户打开浏览器的指定配置获取ip
                  this.dialogVisibleIp = true;
                }
                console.log("ip_addr:", this.address); //打印获取的IP地址
              }
            };
          })();
        else {
          console.log("没有找到");
        }
      }
    },
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值