go 验证码实现

依赖

"github.com/mojocn/base64Captcha"

 官方预览

实现

package util

import (
	cp "github.com/mojocn/base64Captcha"
	"image/color"
	"strings"
)

var captcha *cp.Captcha

const (
	height = 43
	width  = 200
	length = 4
)

//创建字符串验证码实例
func init() {
	driver := cp.NewDriverString(height, width, 0, cp.OptionShowHollowLine,
		length, cp.TxtSimpleCharaters, &color.RGBA{254, 254, 254, 254}, []string{"Flim-Flam.ttf"})
	cape := cp.NewCaptcha(driver, cp.DefaultMemStore)
	captcha = cape
}

//验证是否有效
func VerifyCaptcha(id, answer string) bool {
	get := cp.DefaultMemStore.Get(id, false)
	if get == "" {
		return false
	}
	if strings.ToLower(strings.TrimSpace(answer)) != strings.ToLower(get) {
		return false
	}
	return true
}

//生成base64
func GenerateCaptcha() (id, b64s string, err error) {
	return captcha.Generate()
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值