您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

怎样实现短信验证优化

2025/8/16 13:51:18发布24次查看
这次给大家带来怎样实现短信验证优化,实现短信验证优化的注意事项有哪些,下面就是实战案例,一起来看一下。
平时我们在项目中进行注册等的时候,会经常用到短信验证的功能,但是现在现在很多短信验证都是存在下面几个问题,例如短信验证时间为60s的时候,
1. 当点击完按钮时,倒计时还没到60s过完时,刷新浏览器,验证码按钮又可以重新点击
2.当点击按钮倒计时开始,例如在50s的时候我关闭了浏览器,过了5s后,我在打开,此时时间倒计时的时间应该是45s左右,但是当重新打开浏览器的时候,按钮又可以重新点击了
为了解决上面的两个问题,就需要把时间都写到localstorage里面去,当打开页面的时候,就去localstorage里面去取,我这里就贴上我的解决方法,因为前几天有个vue的项目用到该方法,所以我这里就写个vue的方法出来吧
组件里面的html代码:
<p class="mtui-cell__ft" @click="getcode">   <button class="mtui-vcode-btn mtui-text-center" v-if="flag">获取短信</button>   <button class="mtui-vcode-btn mtui-text-center" v-if="!flag">剩余{{second}}s</button></p>
重点来啦
在data里面定义几个需要用到的变量:
second: 60, flag: true, timer: null // 该变量是用来记录定时器的,防止点击的时候触发多个setinterval
获取短信验证的方法:
getcode() {   let that = this;   if (that.flag) {    that.flag = false;    let interval = window.setinterval(function() {     that.setstorage(that.second);     if (that.second-- <= 0) { that.second = 60; that.flag = true; window.clearinterval(interval); } }, 1000); } }
写入和读取localstorage:
setstorage(parm) { localstorage.setitem("dalay", parm); localstorage.setitem("_time", new date().gettime()); }, getstorage() { let localdelay = {}; localdelay.delay = localstorage.getitem("dalay"); localdelay.sec = localstorage.getitem("_time"); return localdelay; }
防止页面刷新是验证码失效:
judgecode() { let that = this; let localdelay = that.getstorage(); let sectime = parseint( (new date().gettime() - localdelay.sec) / 1000 ); console.log(localdelay); if (sectime > localdelay.delay) {    that.flag = true;    console.log(已过期);   } else {    that.flag = false;    let _delay = localdelay.delay - sectime;    that.second = _delay;    that.timer = setinterval(function() {     if (_delay > 1) {      _delay--;      that.setstorage(_delay);      that.second = _delay;      that.flag = false;     } else { // 此处赋值时为了让浏览器打开的时候,直接就显示剩余的时间      that.flag = true;      window.clearinterval(that.timer);     }    }, 1000);   }  }
相信看了本文案例你已经掌握了方法,更多精彩请关注其它相关文章!
推荐阅读:
如何使用vuex操作state对象
怎样使用node做出个人号机器人
以上就是怎样实现短信验证优化的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product