页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

3、参考例子

代码块
languagejava
// 自定义实现类,需要实现验证码的生成、存储、发送、校验等逻辑
public class CustomSmsCaptchaCodeService implements ICaptchaCodeService {
  public boolean sendCaptchaCode(CaptchaCodeSendReq req) {
    // 具体实现参考产品内 SmartbiSmsCaptchaCodeService.sendCaptchaCode 方法的实现
  }
  public CaptchaCodeValidResp validateCaptchaCode(CaptchaCodeValidReq req) {
    // 具体实现参考产品内 SmartbiSmsCaptchaCodeService.validateCaptchaCode 方法的实现
  }
}

public class CustomEmailCaptchaCodeService implements AbstractCaptchaCodeService {
  public boolean sendCaptchaCode(CaptchaCodeSendReq req) {
    // 具体实现参考产品内 SmartbiEmailCaptchaCodeService.sendCaptchaCode 方法的实现
  }
  public CaptchaCodeValidResp validateCaptchaCode(CaptchaCodeValidReq req) {
    // 具体实现参考产品内 SmartbiEmailCaptchaCodeService.validateCaptchaCode 方法的实现
  }
}

// 设置自定义实现
UserManagerModule.getInstance().setSmsCaptchaCodeService(new CustomSmsCaptchaCodeService());
UserManagerModule.getInstance().setEmailCaptchaCodeService(new CustomEmailCaptchaCodeService());

注意:验证码应当限制发送频率、校验次数,避免恶意请求频繁发送验证码造成经济损失、频繁校验验证码导致被枚举。