flask图片验证思路

flask图片验证思路_第1张图片

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

你可能感兴趣的:(flask)