nodejs取得mac地址
1、背景
使用nodejs取得客户端电脑的mac地址作为唯一的标识,但如何使用getmac模块,
本文结合网上资料和实践,总结如下;
2、需要的moduels
getmac、extract-opts、typechecker;
getmac取得mac地址;extract-opts是getmac的依赖;typechecker是extract-opts的依赖;
moduels在 node官网的https://npmjs.org/中搜索,进入github下载;
3、将所需模块转换成javascript
getmac 三个模块是用coffeescript写的;因为我不太熟悉coffeescript,在开发引入时总是报错;最后找到方法:将coffeescript写的模块转换成 javascript;
转换步骤如下:
a、安装nodejs:windows下直接下载安装包安装
b、下载coffeescript软件包,直接解压;
c、制作脚本coffee.cmd,方便转换;cmd内容如下:注意 a步骤的node.exe和b步骤中解压的coffee-script路径;
@echo off
"node.exe" "coffee-script/bin/coffee" %*
d、转换:执行coffee.cmd,如下;注意参数 -c;执行后,会在同getmac.coffee同目录下生成 getmac.js;其它两个模块也照此方法转换;
coffee.cmd -c getmac.coffee
4、将生成的javascript文件,放于node_modules下;参照 模块的官方文档,开始使用;
var mac;
var macObj = require('getmac');
macObj.getMac(function(err,macAddress){
if (err) throw err;
mac=macAddress;
});
5、本文的结构图
nodejs取得mac地址的更多相关文章
- Java获取本机的IP与MAC地址
有些机器有许多虚拟的网卡,获取IP地址时会出现一些意外,所以需要一些验证: // 获取mac地址 public static String getMacAddress() { try { Enumer ...
- C#/VB.NET 获取电脑属性(硬盘ID、硬盘容量、Cpu序列号、MAC地址、系统类型)
在开发过程中,经常需要获取电脑的一些属性,如获取硬盘ID/CPU序列号/MAC地址作为来加密字符串. 1.硬盘 在我查看网上一些文档时,发现很多人对硬盘序列号很模糊~ 什么叫硬盘序列号?指的是作为一个 ...
- (转载)详解网络传输中的三张表,MAC地址表、ARP缓存表以及路由表
郑重声明:原文转载于http://dengqi.blog.51cto.com/5685776/1223132 向好文章致敬!!! 一:MAC地址表详解 说到MAC地址表,就不得不说一下交换机的工作原理 ...
- 手机电脑Mac地址修改方法
1.什么是Mac地址? MAC(Media Access Control或者Medium Access Control)地址,意译为媒体访问控制,或称为物理地址.硬件地址,用来定义网络设备的位置.在O ...
- Web获取客户端物理MAC地址(ocx插件)
主要是通过ActiveX控件 从本地获取到MAC地址,传入到浏览器打开的网页中,再提交到服务器. 具体详解与步骤看文档中: 文件实例包下载 DotNetFX 文件夹附件文件:(可能安装时需用) dot ...
- Mac地址
Mac地址是每张网卡的唯一标识符,也叫物理地址.硬件地址或链路地址,由网络设备制造商生产时烧在网卡的ROM中,可以修改.现在的Mac地址一般都采用6字节48bit(还有2字节16bit的Mac地址,多 ...
- php获取网卡MAC地址源码
<?php /** 获取网卡的MAC地址原码:目前支持WIN/LINUX系统 获取机器网卡的物理(MAC)地址 **/ class GetMacAddr{ var $return_array = ...
- 路由转发过程的IP及MAC地址变化
A-----(B1-B2)-----(C1-C2)-------E就假设拓扑图是这个样子吧,B1和B2是路由器B上的两个接口,C1和C2是路由器C上的两个接口,A和E是PC,由主机A向主机E发送数据包 ...
- C#获得MAC地址(网卡序列号)代码
代码如下: //获得网卡序列号 //MAc地址 http://www.cnblogs.com/sosoft/ public string GetMoAddress() { string MoAddre ...
随机推荐
- 和Eclipse一起走过的日子
一见钟情 大二上学期,第一次接触java Web.老师为了帮助我们从底层理解java Web的执行环境,要求我们不能使用不论什么IDE,仅仅能用记事本. 好吧,老师也是为了咱好.简单的一个 ...
- lua的string库与强大的模式匹配
lua原生解释器对字符串的处理能力是十分有限的,强大的字符串操作能力来自于string库.lua的string函数导出在string module中.在lua5.1,同一时候也作为string类型的成 ...
- JAVA责任链设计模式
<JAVA与模式>之责任链模式 在阎宏博士的<JAVA与模式>一书中开头是这样描述责任链(Chain of Responsibility)模式的: 责任链模式是一种对象的行为模 ...
- C#中log4net使用方法(一)
Log4net是一个第三方开源组件,它设计的主要目的是组合,生成日志信息,同时将配置保存到各种存储介质或者展现平台中,在实际项目中,Log4net可以保存系统运行情况,可以在系统出现异常时,根据保存的 ...
- 创建SDE表空间
创建空间数据存储类型为ST_Geometry的要素类有2种方法:1)使用SDE创建要素类从9.3 开始,默认创建的要素类都使用ST_Geometry存储空间数据,9.3 版本之前,可以通过配置dbtu ...
- CDH(cdh5.7) 上集成 kafka
CDH 可以在线下载: 离线安装
- wdcp升级php和mysql
安装没什么好说的,按照wdcp官方去搞就行了,这里如果是centos系统建议使用rpm安装方式附件如下(这里包含了本文后面用到的三个文件) http://download.csdn.net/detai ...
- JS输出当前时间,且每秒变化
<div id="timer"></div> <script type="text/javascript"> window. ...
- php 常用经验
1.用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的”函数”(译注:PHP手 ...
- github/python/ show me the code 25题(一)
先上网址 https://github.com/Show-Me-the-Code/show-me-the-code 初学python拿来练手,记住一些常用的库和函数 第 0000 题:将你的 QQ 头 ...
