如何使用javascript获取电脑的MAC地址? 要求兼容chrome浏览器的?
或者系统要求单点登录,同一个账号,不允许同时登录,一方登录,另外一方要求剔出来
如何使用javascript获取电脑的MAC地址? 要求兼容chrome浏览器的?
或者系统要求单点登录,同一个账号,不允许同时登录,一方登录,另外一方要求剔出来
来,我给你个单点登录的思路。
只允许一台在线,如果有另外机器登录,其他机器掉线。
有A,B,C三台电脑。
第一步:A登录,在cookie记录目前 num = 1; 服务器端记录当前num=1的为活动用户。
第二部:B登录,服务器检查到目前有num=1了,那就给B设置num=2,这样B的cookie记录目前num=2,服务器记录当前num=2的为活动用户。
第三步:A用户来请求接口了,检测到num=1已经过期了,就给他掉线。
单点登录需要两个攻击,redis+mysql;
用户登录,账户密码验证成功后,给他设置一个token,并将token作为redis的key值,用户id作为value值保存。
同时,再给MySQL来一个登录日志表,记录用户id和token,状态0登入1退出;
这是当另外一个人登录这个账号的时候,拿着这个账号去MySQL查询有没有人在登录,如果有人在登录就给他设置成退出,并返回token;
再拿着tokne将redis中的记录删除。
然后你再生成新的token和MySQL记录;
这样就可以实现单点登录了。
reids还拥有设置时间的功能,利用这一点,你还可以做账号登录后,半个小时候自动退出
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
单点登录,一般接口传一个票据给前端作为标记(存到xxStorage 或者 cookie 里)就足够了。没有太大的必要做到MAC地址级别的精确
浏览器作为一个沙箱环境,是获取不到用户的MAC地址的,因为没有那样的API