vue前端获取电脑本机的mac和ip地址

vue 前端 使用 node 里的 os 模块,来获取主机mac和IP地址

需要注意的是这篇教程只能获取本地的,打包到服务器上也是服务器的。需要获取不同使用者的客户端mac,看我这篇。获取客户端不同的mac地址

一、根目录创建 getNetworkInfo.js 脚本文件

javascript 复制代码
const os = require("os");
function getNetworkInfo() {
  let address = "127.0.0.1";
  let mac = "";
  const networkInterfaces = os.networkInterfaces();
  for (const iface of Object.values(networkInterfaces)) {
    for (const details of iface) {
      if (
        details.family === "IPv4" &&
        details.mac !== "00:00:00:00:00:00" &&
        details.address !== "127.0.0.1"
      ) {
        mac = details.mac;
        address = details.address;
        return { mac, address };
      }
    }
  }
  return { mac, address };
}
module.exports = getNetworkInfo;

二、vue.config.js中引入

javascript 复制代码
const getNetworkInfo = require("./getNetworkInfo.js");
const { mac, address } = getNetworkInfo();
// 自定义环境变量全局使用
process.env.VUE_APP_MAC = mac;
process.env.VUE_APP_ADDRESS = address;

三、页面中使用

bash 复制代码
 <template>
  <div class="box-card">
    <h3>mac:{{ mac }}</h3>
    <h3>address:{{ address }}</h3>
  </div>
</template>

<script>
export default {
  data() {
    return {
      mac: "",
      address: "",
    };
  },
  mounted() {
    this.mac = process.env.VUE_APP_MAC;
    this.address = process.env.VUE_APP_ADDRESS;
    console.log("process.env.VUE_APP_MAC>>>→➡️➡️➡️", process.env.VUE_APP_MAC);
    console.log(
      "process.env.VUE_APP_ADDRESS>>>→➡️➡️➡️",
      process.env.VUE_APP_ADDRESS
    );
  },
};
</script>

<style lang="scss" scoped></style>

四、os 其他操作方法

其他用法:

c 复制代码
os.EOL
定义操作系统一行结束的标识的常量。
c 复制代码
os.arch()
返回操作系统 CPU 架构,可能的值有 "x64"、"arm" 和 "ia32"。
c 复制代码
os.cpus()
返回一个数组对象,包括CPU的型号、速度、时间等。
c 复制代码
os.endianness()
返回 CPU 的字节序,可能的是 "BE" 或 "LE"。
Little endian:将低序字节存储在起始地址。
Big endian:将高序字节存储在起始地址。
c 复制代码
os.freemem()
返回操作系统空闲内存,单位是字节。
c 复制代码
os.homedir()
返回当前用户的主目录。
c 复制代码
os.hostname()
返回操作系统的主机名。
c 复制代码
os.loadavg()
返回一个包含 1、5、15 分钟平均负载的数组。
c 复制代码
os.platform()
返回操作系统平台。
c 复制代码
os.release()
返回操作系统的发行版本。
c 复制代码
os.tmpdir()
返回操作系统默认的临时文件目录。
c 复制代码
os.totalmem()
返回系统内存总量,单位为字节。
c 复制代码
os.type()
返回操作系统名称。
c 复制代码
os.uptime()
返回操作系统运行的时间,以秒为单位。
相关推荐
Hilaku10 分钟前
我重写了整个项目,但没人感谢我!
前端·javascript·程序员
zach1 小时前
Vue/React SPA 打包部署后,子路由刷新 401 未登录问题彻底解决
前端·nginx·next.js
旋生万物1 小时前
素数螺旋映射 $z_n=n^{1+i}$ 的角分布统计检验与零模型对比
大数据·前端·人工智能·算法·云原生·螺旋生成论·螺旋相位
亿元程序员1 小时前
游戏引擎都没用!纯AI又上线了一款蚂蚁搬家小游戏!
前端
福兮说1 小时前
JS 正则的六个坑:带 g 的 test() 一真一假、空匹配死循环、replace 里的 $
开发语言·前端·javascript·正则表达式
miss1 小时前
给规则引擎加一个拖拽画布:Vue Flow 单向投影 + 布局语义分离
javascript·vue.js·canvas
溪语流沙1 小时前
Django + Vue电商项目第005讲:后端骨架|Django初始化、配置分层与DRF接入
vue.js·后端·python·django
码艺-Alimjan1 小时前
Web 网站打包桌面应用的另一种方式,超级简单(C# exe 33Kb)
开发语言·前端·c#
flash俊杰1 小时前
时间线到 filter_complex:把编辑文档编译成 FFmpeg 滤镜图
前端
Tyrvision1 小时前
新品发布前,三维动画怎么排期才不挤在最后一周?
前端