在vue中使用 qrcodejs2

1.安装

npm install  qrcodejs2 --save

2.引入

import QRCode from "qrcodejs2"

3.生成二维码

(一)放二维码的标签

<div class="qrcode" ref="qrCodeUrl"></div>

(二)生成二维码

methods: {creatQrCode() {var qrcode = new QRCode(this.$refs.qrCodeUrl, {text: 'content',  //需要转换为二维码的内容width: 100, //二维码宽度height: 100,  //二维码高度colorDark: '#000000', //前景色   colorLight: '#ffffff', //后景色correctLevel: QRCode.CorrectLevel.L //容错级别})}
},
mounted() {this.creatQrCode()
}

实现功能:用手机app扫码,实现pc端扫码登录

pc端扫码可以便捷地实现登录,避免了过多地输入。但是手机APP扫pc端的二维码时只能pc端向手机传递信息,而pc端无法获取到手机登录的权限,如果让pc端再去输入登录的token是不现实的。因此pc在APP传递信息时需要将自己的信息传给APP,APP在拿到信息以后同时携带APP的信息一并传给服务器。这样服务器才能知道是哪个pc端需要登录。

功能实现大致过程:

过程1,2,3中pc端携带着pc端设备的信息向服务端发起请求,服务端返回token1。而pc端需要用token1生成二维码,让手机APP扫码的时候可以获取到token1。

过程4,5。手机端APP扫码后拿到token1,然后携带着token1和APP自身的token2一起向服务端发起请求,让服务端将手机APP和pc端绑定在一起。接着还需要确认登录,告诉服务器允许当前的pc端登录。

过程6。pc端需要不断轮询,查看手机是否扫码,当扫成功后pc端页面展示“扫码成功”并继续轮询,当APP确认登录后,pc端展示“成功登录”并跳转页面

轮询代码:

const interval = setInterval(() => {//此处换成你服务器自己的地址qrcodeState.get("http://192.168.0.103:8888/qrcode/getStatus?code=" + this.code).then((res) => {if (res.data.data.status == "yes") {this.text = "扫描成功,请确认登陆";this.isScan = true;}if (res.data.data.status == "success") {this.text = "登陆成功";this.userName = res.data.data.userName;clearInterval(interval); //停止}});}, 1000);

这是个较为简单的二维码登录,还需要完善“二维码过期”等功能。

vue qrcodejs2生成二维码实现手机APP扫码进行web网页登录相关推荐

  1. vue前端生成二维码,实现扫码下载功能

    vue前端生成二维码,实现扫码下载功能 首先需要安装一个插件 npm install --save qrcodejs2 然后在需要的页面引入插件,最后使用 <template><di ...

  2. Vue项目生成二维码

    场景: [民主测评.闭卷测试] Vue项目生成二维码,使用手机浏览器扫码录入答题 一,创建vue项目,样式布局,接口联调, npm run build 打包成dist 文件,让后台发送到服务器中,页面 ...

  3. 使用 qrcodejs2 生成二维码详细API和参数

    使用 qrcodejs2 生成二维码 安装 qrcodejs2 cnpm install qrcodejs2 --save 使用 qrcodejs2 页面引入 import QRCode from ' ...

  4. vue实现生成二维码,并生成图片

    vue实现生成二维码,并生成图片 1.安装插件 npm install qrcodejs2 --save npm install --save html2canvas 2.导包 import html ...

  5. Vue批量生成二维码并分页打印,组件形式实现

    Vue批量生成二维码并分页打印,组件形式实现 一. 最终效果 二. 实现方式 一. 最终效果 二. 实现方式 安装qrcodejs2插件: // 终端执行 npm install qrcodejs2 ...

  6. Vue中生成二维码的一种方式—vue-qr

    Vue中生成二维码的一种方式-vue-qr vue实现二维码生成(vue + vue-qr)

  7. vue 前端生成二维码,并转换为图片

    这篇文章主要是分享下自己的收获,也是自己遇到的问题: 前端如何自己生成二维码? 前端如何将生成的二维码转成图片并展示? 如何控制二维码的显隐? 话不多说,直接上干货 base64如何转换成图片 npm ...

  8. 在H5中使用qrcode, qrcodejs2生成二维码

    在H5中使用qrcode生成二维码 安装插件 ```javascript npm install --save qrcode ``` 使用插件 按需引入 //index.html<html> ...

  9. vue中 生成二维码 并自动批量下载

    项目中经常又这样的需求,要求将字符串生成二维码,并下载下来 一般分为 生成一个二维码展示并下载,对于这种你只需调用 qrcodejs2生成二维码就可以了 下载也是按钮触发 今天我们要说的是 批量下载, ...

最新文章

  1. JavaScript 之 特殊运算符
  2. vim 使用 surround 批量添加 引号
  3. boost::math模块使用拉普拉斯(与正态比较)分布的示例的测试程序
  4. 2/100. Hamming Distance
  5. 后缀为frm是什么文件_Shell 点文件可以为你做点什么
  6. @程序员,你准备好推出自己的移动应用了吗?
  7. android报错:org.ksoap2.SoapFault cannot be cast to org.ksoap2.serialization.SoapObject
  8. create方法 eslint关闭_详解create-react-app 自定义 eslint 配置
  9. linux怎么建立链接文件,Linux 建立文件夹的链接
  10. Git(3):git clone远程GitHub仓库代码出现“Permission Denied (publickey)”问题
  11. 村村响农村广播-盐池县农村IP广播案例
  12. Hybird App开发,懂得小程序+kbone+finclip就够了!
  13. Index Notation
  14. Python#Typora-Python笔记
  15. opencv对相似图片一键找不同。(嘻嘻,找不同小游戏作弊神器)
  16. 【深度学习基础1】深度学习发展历史
  17. Flutter web 滚动循环 title(Flutter Web端 滚动显示浏览器标签页名)
  18. 从排序数组中删除重复项-Python-LeetCode
  19. 股票只有两个字:“等待”
  20. SOLIDWORKS如何在工程图中直接更换图纸格式

热门文章

  1. 你的团队健康吗?如何打造一支健康的团队?
  2. maven 修改maven本地仓库的位置
  3. 如何查找国际会议信息的总结
  4. 后台管理系统常用的Font Awesome图标及图标自定义方法
  5. webrtc编译中的错误解决
  6. Hadoop、Hive、HDFS、Hbase、KUDU、Spark之间关系
  7. 基于Java+vue实现高校学科竞赛项目系统详细设计
  8. Android获取所有App信息
  9. linux系统下查看服务器品牌型号序列号
  10. flush=true 的含义