f
This commit is contained in:
@@ -12,6 +12,7 @@ import (
|
|||||||
"xingfucha-server/app/main/model"
|
"xingfucha-server/app/main/model"
|
||||||
"xingfucha-server/common/ctxdata"
|
"xingfucha-server/common/ctxdata"
|
||||||
"xingfucha-server/common/xerr"
|
"xingfucha-server/common/xerr"
|
||||||
|
"xingfucha-server/pkg/captcha"
|
||||||
"xingfucha-server/pkg/lzkit/crypto"
|
"xingfucha-server/pkg/lzkit/crypto"
|
||||||
"xingfucha-server/pkg/lzkit/validator"
|
"xingfucha-server/pkg/lzkit/validator"
|
||||||
|
|
||||||
@@ -84,10 +85,12 @@ func (l *QueryServiceLogic) ProcessMarriageLogic(req *types.QueryServiceReq) (*t
|
|||||||
return nil, errors.Wrapf(xerr.NewErrCodeMsg(xerr.PARAM_VERIFICATION_ERROR, validatorErr.Error()), "查询服务, 参数不正确: %+v", validatorErr)
|
return nil, errors.Wrapf(xerr.NewErrCodeMsg(xerr.PARAM_VERIFICATION_ERROR, validatorErr.Error()), "查询服务, 参数不正确: %+v", validatorErr)
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验验证码
|
// 校验拼图验证码(marriage 产品使用拼图验证,不使用短信验证码;captcha_verify_param 为必传)
|
||||||
verifyCodeErr := l.VerifyCode(data.Mobile, data.Code)
|
if data.CaptchaVerifyParam == "" {
|
||||||
if verifyCodeErr != nil {
|
return nil, errors.Wrapf(xerr.NewErrMsg("请完成拼图验证"), "marriage 查询缺少拼图验证参数")
|
||||||
return nil, verifyCodeErr
|
}
|
||||||
|
if err := l.VerifyCaptcha(data.CaptchaVerifyParam); err != nil {
|
||||||
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
// 校验三要素
|
// 校验三要素
|
||||||
@@ -586,6 +589,20 @@ func (l *QueryServiceLogic) VerifyCode(mobile string, code string) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 校验拼图验证码
|
||||||
|
func (l *QueryServiceLogic) VerifyCaptcha(captchaVerifyParam string) error {
|
||||||
|
cfg := l.svcCtx.Config.Captcha
|
||||||
|
if err := captcha.Verify(captcha.Config{
|
||||||
|
AccessKeyID: cfg.AccessKeyID,
|
||||||
|
AccessKeySecret: cfg.AccessKeySecret,
|
||||||
|
EndpointURL: cfg.EndpointURL,
|
||||||
|
SceneID: cfg.SceneID,
|
||||||
|
}, captchaVerifyParam); err != nil {
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
// 二、三要素验证
|
// 二、三要素验证
|
||||||
func (l *QueryServiceLogic) Verify(Name string, IDCard string, Mobile string) error {
|
func (l *QueryServiceLogic) Verify(Name string, IDCard string, Mobile string) error {
|
||||||
// 开发环境下跳过二/三要素验证(避免未授权IP调用天元API失败)
|
// 开发环境下跳过二/三要素验证(避免未授权IP调用天元API失败)
|
||||||
|
|||||||
@@ -4,7 +4,7 @@ type MarriageReq struct {
|
|||||||
Name string `json:"name" validate:"required,name"`
|
Name string `json:"name" validate:"required,name"`
|
||||||
IDCard string `json:"id_card" validate:"required,idCard"`
|
IDCard string `json:"id_card" validate:"required,idCard"`
|
||||||
Mobile string `json:"mobile" validate:"required,mobile"`
|
Mobile string `json:"mobile" validate:"required,mobile"`
|
||||||
Code string `json:"code" validate:"required"`
|
CaptchaVerifyParam string `json:"captcha_verify_param"`
|
||||||
}
|
}
|
||||||
type HomeServiceReq struct {
|
type HomeServiceReq struct {
|
||||||
Name string `json:"name" validate:"required,name"`
|
Name string `json:"name" validate:"required,name"`
|
||||||
|
|||||||
Reference in New Issue
Block a user