本帖最后由 luolanqiang 于 2021-8-5 02:22 编辑
我又开始嘚瑟~~~老规矩,高手请飘过。
一直以来,扫码登录都是个很蛋疼的事情,如果把钉钉或者企业微信作为客户端,那就需要调用客户端的扫码权限,比较麻烦,要有代码基础,懒人显然不适用。或者使用活字格APP,但是众所周知活字格APP没有即时通讯和信息推送功能,可能多数用户不会使用;另外就是我之前说的方法,自研APP。现在来说一个不需要获取扫一扫权限的方法,开搞:
思路:
将系统的手机主页的URL+#+随机码拼接为一个地址(随机码可以用rand函数生成,技巧:如果要生成6位数的随机码,可以写成=round(rand()*(999999-100000)+100000,0)即可得到一个6位数的整数),拼接的结果就是http://xxxxxx#123456,其中"http://xxxxxx"为你的手机主页的完整地址,“#”后边的是随机码。现在使用企业微信或者任何APP甚至网页直扫,将跳转到这个主页,设置页面加载命令提取这个URL,然后用RIGHT函数提取出URL的后6位,即为随机码。
(具体参照这个帖子:https://gcdn.grapecity.com.cn/fo ... ad&tid=80583&extra=)
然后具体参照这个帖子:https://gcdn.grapecity.com.cn/fo ... ad&tid=76773&extra=
你需要设置一个密码备份,就是让用户在修改密码或者重置密码的时候,将当前密码写入用户自定义属性,这样就可以在PC端调用服务端命令登录,然后跳转到主页。
PC端的实现方法:
设置一个扫码登录数据表,其中包含随机码、用户名和密码。手机端成功登录后,如果检测到URL的后6位数是整数的话,就说明当前属于授权PC端登录状态,向扫码登录数据表写入一条信息。PC端将这个数据表加载到页面上,查询条件为,随机码等于当前随机码,6位数随机码铁定是1对1的,不会有重复数据(当然你可以定时删除旧数据),表格0.5秒定时刷新,只要手机端写入数据,PC端就会在0.5秒内找到这个数据,然后激活服务端登录命令。就酱紫的,完毕。
灰常的快。。。。
另外,使用企业微信或者钉钉推送验证码,然后调用重置密码命令,也是非常方便的,修改密码其实没那么麻烦。
|