动画验证码接入

动画验证码接入

前言

进行动画验证码接入前请先完成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;
}

状态码

请参考状态码汇总说明

文档中心搜索

技术
咨询

微信扫一扫

随时联系技术支持

在线
咨询