动画验证码接入

动画验证码接入

前言

进行动画验证码接入前请先完成SDK的接入与初始化

功能说明

动画验证码主要用于区分人类与机器
现提供两种模式,请业务方根据自身业务场景进行选择

  • 智能无感模式
    此模式会自动判断设备的风险等级,可信设备无感验证通过,怀疑设备弹出动画验证码进行校验。

  • 动画验证模式
    此模式每次调用均弹出动画验证码进行校验。

整体流程

  • 动画验证模式

  • 智能无感模式

接口列表

方法 功能说明
nonSenseCaptcha 智能无感校验接口
startAnimationCaptcha 动画验证码校验接口

接口说明

1、智能无感接口

 /**
  * 智能无感验证接口
  * @param pnMD5 MD5后的手机号码
  * @param accountId accountId
  * @param businessId 业务businessId
  * @param showLoadingView 是否显示动画
  * @param readyAnimationCallback 动画回调
  * @param callback 通用接口回调
  */
+ (void)nonSenseCaptcha:(NSString *)pnMD5 accountId:(NSString *)accountId businessId:(NSString *)businessId isShowLoadingView:(BOOL)showLoadingView readyAnimation:(GyReadyAnimationCallback)readyAnimationCallback completeCallback:(GyVerifyCallback)callback;

输入参数

参数名称 是否必填 类型 描述
pnMD5 String 手机号md5值,32位小写
accountId String 用户账号ID,可加密,保证每个用户唯一即可
businessId String 业务场景ID,用于标识不同的场景,例如登录、注册、找回密码等,可联系技术支持添加
showLoadingView bool 是否显示动画
readyAnimationCallback GyReadyAnimationCallback 动画接口回调
callback GyVerifyCallback 通用接口回调

回调说明

回调参数 参数说明
GyVerifyCallback 验证返回信息

回调参数说明

回调参数 参数说明
success 调用成功与否
msg 返回调用描述信息
code 返回具体的业务结果编码
gyuid 设备注册后返回的唯一标识
validate 二次校验凭证
reqId

调用示例:

[GeYanSdk nonSenseCaptchaWithPnMD5:[GyDemoUtil toMD5String:_pnTF.text]
                accountId:@"accountId"
                businessId:@"20180525b"
                withCallback:^(NSDictionary *verifyDictionary) {

    NSInteger rstCode = [verifyDictionary[@"code"] integerValue];
    // CommonToastHUD 为 HUD 提醒控件,用于提示用户
    [[CommonToastHUD sharedInstance] showTips:verifyDictionary[@"msg"]];
    if (rstCode == 28001 || rstCode == 27001) {
        // 执行代码
    }
}];

返回示例:

{
    code = 28001;
    gyuid = c57330157f5f4a98845716a32a2a81a131;
    msg = "\U667a\U80fd\U65e0\U611f\U9a8c\U8bc1\U901a\U8fc7";
    reqId = "";
    success = 1;
    validate = 73becd031f8442ac56b9242bb9d9a9ec;
}

2、动画验证码接口

/**
 * 动画验证接口
 * @param businessId 业务ID
 * @param showLoadingView 是否显示动画
 * @param readyAnimationCallback 动画回调
 * @param callback 通用接口回调
 */
+ (void)startAnimationCaptcha:(NSString *)businessId isShowLoadingView:(BOOL)showLoadingView isReadyAnimation:(GyReadyAnimationCallback)readyAnimationCallback completeCallback:(GyVerifyCallback)callback;

输入参数

参数名称 是否必填 类型 描述
businessId String 业务场景ID,用于标识不同的场景,例如登录、注册、找回密码等,可联系技术支持添加
showLoadingView bool 是否显示动画
readyAnimationCallback GyReadyAnimationCallback 动画接口回调
callback GyVerifyCallback 通用接口回调

回调

回调参数 参数说明
GyVerifyCallback 验证返回信息

回调参数说明

回调参数 参数说明
success 调用成功与否
msg 返回调用描述信息
code 返回具体的业务结果编码
gyuid 设备注册后返回的唯一标识
validate 二次校验凭证
reqId

调用示例

[GeYanSdk startAnimationCaptchaWithBusinessId:@"20180525b"
                                                withCallback:^(NSDictionary *verifyDictionary) {
    // CommonToastHUD 为 HUD 提醒控件,用于提示用户
    [[CommonToastHUD sharedInstance] showTips:verifyDictionary[@"msg"]];
    NSInteger rstCode = [verifyDictionary[@"code"] integerValue];
    if (rstCode == 28001 || rstCode == 27001) {
        // 执行代码
    }
}];

返回示例

{
    code = 27001;
    gyuid = c57330157f5f4a98845716a32a2a81a131;
    msg = "\U52a8\U753b\U9a8c\U8bc1\U7801\U6821\U9a8c\U901a\U8fc7";
    reqId = "";
    success = 1;
    validate = 5e88bacba0af74e4d39c91f837fbc66d;
}

状态码

请参考状态码汇总说明

文档中心搜索