vue获取本机ip地址

这篇具有很好参考价值的文章主要介绍了vue获取本机ip地址。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

 mounted() {

      this.getUserIP((ip)=>{

         console.log('ip=')

         console.log(ip)

      })

    },

   methods: {

 getUserIP (onNewIP) {

        //获取不到可能是因为chrome浏览器版本过高,需要修改浏览器配置如下

        //在chrome地址栏输入:chrome://flags/#enable-webrtc-hide-local-ips-with-mdns

         // 把 Anonymize local IPs exposed by WebRTC 设置为 disabled

         //不能确保每一个浏览器都设置打开webRTC~~~~~

      let MyPeerConnection = window.RTCPeerConnection || window.mozRTCPeerConnection || window.webkitRTCPeerConnection;

      let pc = new MyPeerConnection({

          iceServers: []

        });

      let noop = () => {

        };

      let localIPs = {};

      let ipRegex = /([0-9]{1,3}(\.[0-9]{1,3}){3}|[a-f0-9]{1,4}(:[a-f0-9]{1,4}){7})/g;

      let iterateIP = (ip) => {

        if (!localIPs[ip]) {onNewIP(ip);}

        localIPs[ip] = true;

      };

      pc.createDataChannel('');

      pc.createOffer().then((sdp) => {

        sdp.sdp.split('\n').forEach(function (line) {

          if (line.indexOf('candidate') < 0) {return;}

          line.match(ipRegex).forEach(iterateIP);

        });

        pc.setLocalDescription(sdp, noop, noop);

      }).catch((reason) => {

        console.log(reason);

      });

      pc.onicecandidate = (ice) => {

        if (!ice || !ice.candidate || !ice.candidate.candidate || !ice.candidate.candidate.match(ipRegex)) {return;}

        ice.candidate.candidate.match(ipRegex).forEach(iterateIP);

      };

    }

}

第二种方式

在vue.config.js中webpack构建时定义process.env属性,这样全局可获得

// 获取本机ip
function getIpAdress () {
  const interfaces = require('os').networkInterfaces()
  for (const devName in interfaces) {
    const iface = interfaces[devName]
    for (let i = 0; i < iface.length; i++) {
      const alias = iface[i]
      if (alias.family === 'IPv4' && alias.address !== '127.0.0.1' && !alias.internal) {
        return alias.address
      }
    }
  }
}


module.exports = {
    ...,
    config.plugin('define').tap(args => {
      args[0]['process.env'].CURRENT_IP = JSON.stringify(getIpAdress())
      return args
    })
  },
  ...
}
 文章来源地址https://www.toymoban.com/news/detail-408315.html

到了这里,关于vue获取本机ip地址的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Qt 获取本机IP地址及Mac地址

    首先需要在pro文件中添加network模块 添加头文件 以下是获取IP地址代码 获取MAC地址 测试应用输出

    2024年02月09日
    浏览(34)
  • Linux c语言获取本机网关 ip 地址

    这篇文章写了获取本机的ip地址和子网掩码:Linux c语言获取本机 ip、子网掩码 关于Netlink套接字请参考:Linux 网络之netlink 简介 Linux Netlink套接字是一种用于在Linux内核和用户空间之间进行通信的机制。它是Linux内核中的一种通信协议,用于让用户空间程序与内核进行交互。使用

    2024年02月07日
    浏览(36)
  • Qt 获取本机 ip地址方法 获取客户端ip和端口的方法

    上述函数返回本机所有IPv4的ip地址列表,比如192.168.1.10|192.166.1.95 其它方法=》 获取客户端IP地址:

    2024年02月14日
    浏览(30)
  • Python获取本机IP地址的三种方式

    目录 1、使用专用网址 2、使用自带socket库 3、使用第三方netifaces库 获取的是 公网IP 。 网址:http://myip.ipip.net 代码: 具体可以类似这样:  比较喜欢用这个,在命令窗口也能使用: 还可以用这个: https://api.ipify.org 获取的是 局域网IP 。 但是上面这个获取的 不是 公网IP,结果

    2024年02月04日
    浏览(32)
  • 银河麒麟(linux 架构aarch64) 获取本机所有IP地址

    环境: 版本:银河麒麟桌面操作系统V10(SP1) 内核:Linux 5.4.18-35-generic CPU:Phytium,D2000/8 终端输入 uname -m 查看 架构 aarch64 在windows 上 和 银河麒麟(linux loongarch64) 使用下面的代码获取IP地址: 银河麒麟(linux) gethostname 获取不到IP地址_程序媛zcx的博客-CSDN博客_银河麒麟查看ip地

    2024年02月11日
    浏览(42)
  • qt-c++进阶1-window、linux下获取本机所有网卡ip信息、根据网卡名获取ip地址。

    例如:第一章 主要是通过qt-c++实现获取本机电脑的网卡信息或者是IP信息 总结c++获取本机网卡信息的方法 第一章:适用于windows操作系统、linux操作系统 用 QHostAddress 解析获取本机 IPV4地址 ; 用 QNetworkInterface 解析获取所有网关信息( IP地址(IPV4和IPV6) 、 子网掩码 、 广播地

    2024年02月13日
    浏览(32)
  • vue项目前端获取本机IP

    火狐(FireFox) 删除隐藏IP 浏览器输入 about:config 搜索配置 media.peerconnection.enabled 改为false ( 刷新程序,IP正常显示 ) 谷歌(Chrome) 删除隐藏IP 浏览器输入:chrome://flags/#enable-webrtc-hide-local-ips-with-mdns 把 Anonymize local IPs exposed by WebRTC 设置为 disabled ( 刷新程序,IP正常显示 ) edge浏览器删除隐

    2024年02月08日
    浏览(37)
  • 在vue项目里获取本机数据,ip,mac……

    有一个接口需要内网ip和mac地址这个需求,在网上找了很多参考的,如下: 方法一:使用webRTC,问题:在新版本的chrome 浏览器,找不到#enable-webrtc-hide-local-ips-with-mdns 代码网上找的,仅供参考,因为改不了浏览器配置,所以一直拿不到 方法二:通过搜狐查询ip的接口,问题:

    2024年02月16日
    浏览(35)
  • 【vue】前端获取用户真实IP地址 (外网IP地址)

    1. 打开index.html !-- 引入JS -- script src=\\\"http://pv.sohu.com/cityjson?ie=utf-8\\\"/script  2. 获取IP  let IP = returnCitySN[\\\"cip\\\"]; localStorage.setItem(\\\'ip\\\',IP);  完整代码:

    2024年02月16日
    浏览(40)
  • vue前端获取本地IP地址

    新建js文件 getIpAddress.js 在index.js文件中添加以下配置

    2024年04月29日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包