Vue用uuid生成随机字符串

        这次的项目登录时需要调用接口获取验证码,我们需要生成一个随机的字符串传给后端然后那去验证码。项目的需求是:1.刷新页面每次传的字符串相同,2.关闭浏览器后或者登录成功退出之后重新登录则该传新的字符串。

        以下是项目界面:

   我的做法是:

        1.安装随机生成字符串的插件uuid

npm install -S uuid

        2.项目中引用

// 生成随机字符串
import { v4 as uuidv4 } from 'uuid'

        3.js代码

      因为需求是关闭浏览器或者登陆之后就让随机生成的字符串不同,所以我这里用到了sessionStorage来存储生成的字符串。(注:sessionStorage 用于临时保存同一窗口(或标签页)的数据,在关闭窗口或标签页之后将会删除这些数据。)

      我这里加了一个if判断:如果sessionStorage中没有sign就获取并且储存进去,如果有的话就直接拿去,这也是为了实现页面刷新sign的值不变这个功能。

// 获取验证码
function method() {
  if (!sessionStorage.getItem('sign')) {
//用uuidv4()获取随机生成的字符串
    sign.value = uuidv4()
//存储至sessionStorage
    sessionStorage.setItem('sign', sign.value)
  } else {
//拿取sign的值
    sign.value = sessionStorage.getItem('sign')
  }
//调用接口拿取后端返回的值生成验证码
  getKaptcha(sign.value).then((res) => {
    codeImg.value = 'data:image/png;base64,' + res.data.imgCode
  })
}

然后登陆成功之后就删除sign这个标识

sessionStorage.removeItem('sign')

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值