feat: 完成人机交互验证 API 接入,增加短信防刷验证

This commit is contained in:
RockYang
2023-07-25 17:00:24 +08:00
parent cd6a811bbd
commit 9bee2a90f9
18 changed files with 705 additions and 213 deletions

View File

@@ -58,12 +58,14 @@ func (h *UserHandler) Register(c *gin.Context) {
// 检查验证码
key := CodeStorePrefix + data.Mobile
var code int
err := h.levelDB.Get(key, &code)
if err != nil || code != data.Code {
logger.Info(code)
resp.ERROR(c, "短信验证码错误")
return
if h.App.Config.EnabledMsgService {
var code int
err := h.levelDB.Get(key, &code)
if err != nil || code != data.Code {
logger.Info(code)
resp.ERROR(c, "短信验证码错误")
return
}
}
// check if the username is exists
@@ -111,7 +113,7 @@ func (h *UserHandler) Register(c *gin.Context) {
var cfg model.Config
h.db.Where("marker = ?", "system").First(&cfg)
var config types.SystemConfig
err = utils.JsonDecode(cfg.Config, &config)
err := utils.JsonDecode(cfg.Config, &config)
if err != nil || config.UserInitCalls <= 0 {
user.Calls = types.UserInitCalls
} else {
@@ -124,7 +126,9 @@ func (h *UserHandler) Register(c *gin.Context) {
return
}
_ = h.levelDB.Delete(key) // 注册成功,删除短信验证码
if h.App.Config.EnabledMsgService {
_ = h.levelDB.Delete(key) // 注册成功,删除短信验证码
}
resp.SUCCESS(c, user)
}