没有办法解决,因为浏览器根本没有把相关信息发给你,巧妇难为无米之炊。你最多只能获取到IP地址。
那有没有什么替代的办法啊,比如说安装个插件什么的,但是我不会开发插件,真是头疼啊
@轩辕公子: 安装插件你就得考虑到浏览器兼容的问题了,代价比较大。
@水牛刀刀: 这个也是没有办法的办法,我在网上找个好几天了,要么就是只能在IE下获取Windows操作系统的MAC地址,要不就是只能在局域网,所以我想试试在客户端动点脑筋,这样获取的信息还比较正确
@轩辕公子: 为什么一定要验证是本人登录?难道没有密码么……如果有密码,他自己密码丢失了,怪谁啊
用ip和主机名就够了吧
这个是没办法的事情,领导非要获取mac地址
在做 B/S 结构的系统时,我们常常需要获取客户端的一些信息,如 IP 和 MAC ,以结合身份验证。 要获取服务器端的 MAC 很容易,但是要获取客户端的 MAC 的地址确要花费一翻心思,通常的做法是调用 Win32API 或直接调用 nbtstat 命令,这样做有很多问题,而另一种方法就是直接用客户端脚本,我们这里用 Javascript ,这样做的好处是不需要服务器端进行处理,有客户端自行获取,传递到服务器端,且速度和可靠性都比在服务器端获取好。
具体实现的html和javascript如下:
其实最关键的还是用到两个ActiveX:
<OBJECT id=locator classid=CLSID:76A64158-CB41-11D1-8B02-00600806D9B6 VIEWASTEXT></OBJECT>
<OBJECT id=foo classid=CLSID:75718C9A-F029-11d1-A1AC-00C04FB6C223></OBJECT>
不过这两个ActiveX都是系统自带,不用去下载或注册。
接下来的工作就是用脚本和ActiveX交互
ps:此种方法只能用于IE浏览器
这种方法我试过了,确实在IE下是可以的,但是我想找个通用的,总不能强制所有人都用IE吧,系统刚上线的时候就强制用户使用IE结果找来一片骂声,最后就不赶强制了,我现在就是想找个通用一点的方法
@轩辕公子: 哈哈,那你就只能写active插件了
@轩辕公子: 还有一个办法就是用cs壳套一下,cs程序能获取到客户端PC配置信息.
然后里面用webbrowser打开你的网站,
@轩辕公子: 好像用winapi就可以获取到客户端的PC信息,包括CPUID都可以,其实mac地址是可以软改的,CPUID保险点
@黑泡泡: 这个方法倒是可以,但是我做的是bs网站啊,照你那样做的话不就变成CS的了吗?
@黑泡泡: 这些信息我倒是想获取,可是在bs模式下用asp.net真的太难了,到目前为止我还么有找到解决的办法,我暂时用的是js获取的,就是你说的那个方法,可是这个设置起来比较麻烦,还会产生安全性问题,我想找一个完美一点的解决方案,难啊
@轩辕公子: 是的,如果网站都能获取客户端权限,那病毒就不知道猖狂到什么地步了
@轩辕公子: 我可以很肯定的告诉你,不可能..其实插件也是客户端程序.只有客户端程序才能获取到这些信息
@轩辕公子: 哥们,你这个问题后来怎么解决的啊? 我也碰到相同的问题。