flask图片验证思路

这里写图片描述

首先可以在前端js生成一个uuid,代码可以这样:

function generateUUID() {
    var d = new Date().getTime();
    if(window.performance && typeof window.performance.now === "function"){
        d += performance.now(); //use high-precision timer if available
    }
    var uuid = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) {
        var r = (d + Math.random()*16)%16 | 0;
        d = Math.floor(d/16);
        return (c=='x' ? r : (r&0x3|0x8)).toString(16);
    });
    return uuid;
}

通过image标签的src配置的url把uuid发送给flask 比如:

unction generateImageCode() {
    imageCodeId = generateUUID();
    var imageCodeUrl = "/..../imagecode?cur=" + imageCodeId + "&pre=" + preImageCodeId;
    $("img").attr("src", imageCodeUrl);
    preImageCodeId = imageCodeId
}

然后flask生成图片验证码(代码在我的资源里),然后将生成的验证码的图片信息返回前端,当前验证码的内容保存到redis中,上一个验证码删除掉,保存格式可以string。

当用户看到验证码图片输入验证码,提交内容,将用户提交的内容,和生成的验证码那次的uuid发送给flask,flask更具uuid在redis中去出正确的验证码内容,和用户提交的验证码比较,判断是否验证通过。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值