1.下载依赖
图形验证码生成 依赖 “github.com/mojocn/base64Captcha”
2.生成验证码
// 图形验证码func CaptchaImage(c *gin.Context) {//config struct for digits//数字验证码配置//var configD = base64Captcha.ConfigDigit{// Height: 80,// Width: 240,// MaxSkew: 0.7,// DotCount: 80,// CaptchaLen: 5,//}//config struct for audio//声音验证码配置//var configA = base64Captcha.ConfigAudio{// CaptchaLen: 6,// Language: "zh",//}//config struct for Character//字符,公式,验证码配置var configC = base64Captcha.ConfigCharacter{Height: 60,Width: 240,//const CaptchaModeNumber:数字,CaptchaModeAlphabet:字母,CaptchaModeArithmetic:算术,CaptchaModeNumberAlphabet:数字字母混合.Mode: base64Captcha.CaptchaModeNumber,ComplexOfNoiseText: base64Captcha.CaptchaComplexLower,ComplexOfNoiseDot: base64Captcha.CaptchaComplexLower,IsShowHollowLine: false,IsShowNoiseDot: false,IsShowNoiseText: false,IsShowSlimeLine: false,IsShowSineLine: false,CaptchaLen: 6,}//创建声音验证码//GenerateCaptcha 第一个参数为空字符串,包会自动在服务器一个随机种子给你产生随机uiid.//idKeyA, capA := base64Captcha.GenerateCaptcha("", configA)//以base64编码//base64stringA := base64Captcha.CaptchaWriteToBase64Encoding(capA)//创建字符公式验证码.//GenerateCaptcha 第一个参数为空字符串,包会自动在服务器一个随机种子给你产生随机uiid.idKeyC, capC := base64Captcha.GenerateCaptcha("", configC)//以base64编码base64stringC := base64Captcha.CaptchaWriteToBase64Encoding(capC)//创建数字验证码.//GenerateCaptcha 第一个参数为空字符串,包会自动在服务器一个随机种子给你产生随机uiid.//idKeyD, capD := base64Captcha.GenerateCaptcha("", configD)//以base64编码//base64stringD := base64Captcha.CaptchaWriteToBase64Encoding(capD)c.JSON(http.StatusOK, model.CaptchaRes{Code: 0,IdKey: idKeyC, //验证请求时须传的参Data: base64stringC,Msg: "操作成功",})}
3.校验验证码
//比对验证码verifyResult := base64Captcha.VerifyCaptcha(req.IdKey, req.ValidateCode)if !verifyResult {response.ErrorResp(c).SetMsg("验证码不正确").WriteJsonExit()return}
