Files
photowall/go/pkg/geetest/geetest.go
T

32 lines
926 B
Go

package geetest
import (
"errors"
)
// 极验行为验证封装
// 参数未配置时返回 ErrNotConfigured,前端可降级为图形验证码
var ErrNotConfigured = errors.New("极验未配置,请联系管理员")
type Config struct {
CaptchaID string
CaptchaKey string
}
// Validate 校验极验二次验证结果
// lotNumber: 极验返回的 lot_number
// captchaOutput: 极验返回的 captcha_output
// passToken: 极验返回的 pass_token
// genTime: 极验返回的 gen_time
func Validate(cfg Config, lotNumber, captchaOutput, passToken, genTime string) error {
if cfg.CaptchaID == "" || cfg.CaptchaKey == "" {
return ErrNotConfigured
}
// TODO: 接入极验官方 SDK 进行二次验证
// 官方流程:用 captcha_id + lot_number + captcha_output + pass_token + gen_time
// 向极验服务器发送 POST 请求验证
// 参考:https://docs.geetest.com/gt4/apirefer/api/server
return nil
}