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

打印 上一主题 下一主题

主题 900|帖子 900|积分 2700

vue 前端 使用 node 里的 os 模块,来获取主机mac和IP地点
需要注意的是这篇教程只能获取本地的,打包到服务器上也是服务器的。需要获取不同使用者的客户端mac,看我这篇。获取客户端不同的mac地点
一、根目录创建 getNetworkInfo.js 脚本文件
  1. const os = require("os");
  2. function getNetworkInfo() {
  3.   let address = "127.0.0.1";
  4.   let mac = "";
  5.   const networkInterfaces = os.networkInterfaces();
  6.   for (const iface of Object.values(networkInterfaces)) {
  7.     for (const details of iface) {
  8.       if (
  9.         details.family === "IPv4" &&
  10.         details.mac !== "00:00:00:00:00:00" &&
  11.         details.address !== "127.0.0.1"
  12.       ) {
  13.         mac = details.mac;
  14.         address = details.address;
  15.         return { mac, address };
  16.       }
  17.     }
  18.   }
  19.   return { mac, address };
  20. }
  21. module.exports = getNetworkInfo;
复制代码
二、vue.config.js中引入
  1. const getNetworkInfo = require("./getNetworkInfo.js");
  2. const { mac, address } = getNetworkInfo();
  3. // 自定义环境变量全局使用
  4. process.env.VUE_APP_MAC = mac;
  5. process.env.VUE_APP_ADDRESS = address;
复制代码
三、页面中使用
  1. <template>
  2.   <div class="box-card">
  3.     <h3>mac:{{ mac }}</h3>
  4.     <h3>address:{{ address }}</h3>
  5.   </div>
  6. </template>
  7. <script>
  8. export default {
  9.   data() {
  10.     return {
  11.       mac: "",
  12.       address: "",
  13.     };
  14.   },
  15.   mounted() {
  16.     this.mac = process.env.VUE_APP_MAC;
  17.     this.address = process.env.VUE_APP_ADDRESS;
  18.     console.log("process.env.VUE_APP_MAC>>>→➡️➡️➡️", process.env.VUE_APP_MAC);
  19.     console.log(
  20.       "process.env.VUE_APP_ADDRESS>>>→➡️➡️➡️",
  21.       process.env.VUE_APP_ADDRESS
  22.     );
  23.   },
  24. };
  25. </script>
  26. <style lang="scss" scoped></style>
复制代码
四、os 其他操作方法
其他用法:
  1. os.EOL
  2. 定义操作系统一行结束的标识的常量。
复制代码
  1. os.arch()
  2. 返回操作系统 CPU 架构,可能的值有 “x64”、“arm” 和 “ia32”。
复制代码
  1. os.cpus()
  2. 返回一个数组对象,包括CPU的型号、速度、时间等。
复制代码
  1. os.endianness()
  2. 返回 CPU 的字节序,可能的是 “BE” 或 “LE”。
  3. Little endian:将低序字节存储在起始地址。
  4. Big endian:将高序字节存储在起始地址。
复制代码
  1. os.freemem()
  2. 返回操作系统空闲内存,单位是字节。
复制代码
  1. os.homedir()
  2. 返回当前用户的主目录。
复制代码
  1. os.hostname()
  2. 返回操作系统的主机名。
复制代码
  1. os.loadavg()
  2. 返回一个包含 1、5、15 分钟平均负载的数组。
复制代码
  1. os.platform()
  2. 返回操作系统平台。
复制代码
  1. os.release()
  2. 返回操作系统的发行版本。
复制代码
  1. os.tmpdir()
  2. 返回操作系统默认的临时文件目录。
复制代码
  1. os.totalmem()
  2. 返回系统内存总量,单位为字节。
复制代码
  1. os.type()
  2. 返回操作系统名称。
复制代码
  1. os.uptime()
  2. 返回操作系统运行的时间,以秒为单位。
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

络腮胡菲菲

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表