flask图片验证思路

来源:互联网 发布:painter自动上色软件 编辑:程序博客网 时间:2024/06/07 07:20

这里写图片描述

首先可以在前端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中去出正确的验证码内容,和用户提交的验证码比较,判断是否验证通过。