当前位置:首页 > 技术文档 > 正文内容

php 实现 二维码 扫描登录

admin10年前 (2016-08-09)技术文档1754

本文转载自:http://blog.chinaunix.net/uid-25568848-id-5596140.html

使用任意二维码工具打开二维码对应链接

http://www.vincentguo.cn/demo/scan


原理介绍:

第一步:访问登录页面,生成唯一key,例如MkhjDFL=,并且将此key 存入cache,对应值为-1 ,-1表示未登录

,key有效期我设置的为5分钟,过期就会重新生成二维码图片


第二步:生成二维码,本人使用库(https://github.com/2amigos/yii2-qrcode-helper),二维码对应的链接 

               http://www.vincentguo.cn/demo/qrcode?key=MkhjDFL=


第三步:登录页面,JS循环请求某个接口,本人接口 http://www.vincentguo.cn/demo/dologin

第四步:使用任意app,打开二维码对饮的链接。此处应该使用自己开发的App,并且App已经登录,然后使用自己的App扫描二维码,然后App请求二维码对应的链接,这样key 就可以 对应到 登录人UID,此时修改cache中key的对应值为登录人UID

第五步:由于第三步在重复请求接口,此接口如果检查到cache中的key值为登录人UID的时候,就会返回登录人信息并且保存登录态


PS:具体生成唯一key的算法,大家可以根据时间信息生成


示例截图如下:

自己可以玩玩:http://www.vincentguo.cn/demo/scan




分享到:

扫描二维码推送至手机访问。

版权声明:本文由云河空间发布,如需转载请注明出处。

本文链接:https://yuyunhe.cn/index.php/post/176.html

分享给朋友:

“php 实现 二维码 扫描登录 ” 的相关文章

php 获取页面内容

function get_contents($url){     if(function_exists('file_get_contents')){       &nbs...

php 使用curl模拟登录discuz以及模拟发帖

<?php $discuz_url = 'http://127.0.0.1/discuz/';//论坛地址 $login_url = $discuz_url .'logging.php?action=login...

php登录函数login session+mysql

<?php // 为php和mysql剔除不安全html代码。 //http://blog.ddian.cn function safestrip($string){    $string = strip_tags(...

利用ctrl+v实现粘贴截图完成上传功能

<?php header("Access-Control-Allow-Origin:*"); $url  = 'http://'.$_SERVER['HTTP_HOST']; $file =&nb...

用php gettext库来开发多语言系统

用php gettext库来开发多语言系统

通常人们写程序时都是将文字写死在程序里的, 比如:echo "Hello World!";  ,假如要改成它国语言,写国际化程序,就要逐个打开进行修改,程序较短时还行,若程序有上万甚至更多,改起来就不是那么容易了。近来随着i18n的逐渐标 准化,我也来讲一讲在PHP中如...

图文解说Navicat使用ssh方式连接远程MySql服务器

图文解说Navicat使用ssh方式连接远程MySql服务器

如何使用Navicat 8.0 for MySQL连接公司服务器的数据库,但我也是第一次接触这个软件,搞了半天也没连上,在网上找了很多解决的办法,其中就有使用ssh方式连接的,但写的不够详细,因此还是费了一番功夫,自己搞定的,不敢独享,特记录下来 与大家分享。首先,在Navicat的连接设置里选择S...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。