产品文档 > 智能风控 > 智能无感验证_FAQ

无感验证 FAQ

一、通用

验证码出现白边,View宽高如何设置?

验证码渲染的宽高大小为300px X 200px,可以根据需求进行宽高=3:2 进行缩放调整。

加载验证码出现 “加载失败/数据异常,请点击重试”?

  • 检查接入AppID跟apiSrever是否正确
  • 检查网络是否正常

验证成功之后,如何重新加载验证?

需要重新实例化 DXCaptchaView 初始化后,调用startToload

验证返回事件这么多,怎么用?

一般业务开发,只需要关注两个事件:验证成功DXCAPTCHA_SUCCESS,验证失败DXCAPTCHA_FAIL,其他事件根据不同需求进行接入。

如何获取token?

验证成功后,会返回事件DXCAPTCHA_SUCCESS,通过map.get("token") 方式获取。

验证码支持React Native方式接入吗?

Android: https://cdn.dingxiang-inc.com/files/10062/DXCaptcha-SDK-for-Android-RN.pdf

验证码,一直显示在“加载中”如何处理?

首先建议清缓存,排查是否是 index.js 没有更新到最新版本导致的。

案例:如 验证码服务更新了一个js文件,部分手机由于缓存机制还在沿用旧版本的js文件,文件版本不一致导致验证码一直处于“加载中”的状态,解决办法是把app端的缓存清理掉即可正常。

验证码 captchaStatus 报server_success,但是result 报false?

首先确认token的传值是否正常, 网络降级情况下是 sl 开头的字符串;

若token 正常,请确认前后端传入的Appid 是否一致;

请注意 验证码 token 只能校验一次,不要多次校验。

以下是校验验证码token的错误码说明:

image.png

验证码在某一手机上加载不出来,其他手机可正常加载?

请确认该手机是否挂了代理,若挂了代理,会导致js拉取不成功。 若没有代理请确认网络是否正常,切换4G再试下。

验证码静态资源转发时需要配置跨域头吗?有什么限制?

验证码静态资源转发的时候需要跨域头,跨域头只能配置一次,再经过其他负载转发的时候需要检查是否重复配置。

为什么验证码显示的缺口很小,图片变形了?

请前端同学查看是否传入了height选项,目前验证码不支持自定义高度。传入height会影响样式布局。

二、Android

Android集成SDK后,运行闪退?

检查assets文件是否集成,混淆配置是否正确。 如日志显示:I/libjdi sdk init cache failed,如有请检查 SDK的assets文件是否集成。

如何更改“验证成功”的文案

Map<String, Object> customLanguage = new HashMap<String, Object>();
customLanguage.put("verify_success", "验证成功");
config.put("customLanguage", customLanguage);
dxCaptcha.initConfig(config);

如何更改“智能检测中”的文案

Map<String, Object> customLanguage = new HashMap<String, Object>();
customLanguage.put("smart_checking", "智能检测中");
config.put("customLanguage", customLanguage);
dxCaptcha.initConfig(config);

如何禁用logo跳转

config.put("logoLink", false);
dxCaptcha.initConfig(config);

不依赖指纹,直接用验证码要怎么设置

验证码版本1.7.2以上的可以如下设置

config.put("DXKeyRiskEnable", false);
dxCaptcha.initConfig(config);

http地址无法访问,logcat报错Cleartext HTTP traffic to xxx not permitted

请在AndroidManifest的Application中新加一句:

<application
    ...
android:usesCleartextTraffic="true"
    ...
/>

SDK lib中的so有那么多版本,需要都放进去么?

我们提供了各种架构的so,具体使用还是要看您原来项目lib用了哪些架构。比如原项目中有v7a和x86目录,那您只需要选择这两个对应的so就行。

三、iOS

如何更改“验证成功”的文案

NSMutableDictionary *config = [NSMutableDictionary dictionary];
[config setObject:@{@"verify_success": @"验证成功",@"xxx": @"xxx"} forKey:@"customLanguage"];

如何更改“智能检测中”的文案

NSMutableDictionary *config = [NSMutableDictionary dictionary];
[config setObject:@{@"smart_checking": @"智能检测中",@"xxx": @"xxx"} forKey:@"customLanguage"];

如何禁用logo跳转

NSMutableDictionary *config = [NSMutableDictionary dictionary];
[config setObject:NO forKey:@"logoLink"];

不依赖指纹,直接用验证码要怎么设置

[config setObject:@"false" forKey:@"DXKeyRiskEnable"];

四、小程序

生产控制台配置的是图文点选方式,微信小程序里显示的为什么还是滑块方式?

答:若接入微信小程序插件版本号是v1.2.13 之前的,则首次验证码类型只支持滑块验证,二次验证方式只支持图文点选验证
若接入微信小程序插件版本号为 v1.2.13,则首次验证码类型支持滑块验证和图文点选验证,二次验证只支持图文点选验证
如有权限,请确认小程序的配置验证方式正确,可在 控制台->无感验证->场景管理页面 ,选择对应的场景(你所接入的小程序名)来编辑验证方式。 如没有权限可联系售后确认。

微信小程序接入的ConstIDServer地址?

答:小程序ConstIDServer地址以 /udid/ w1 结尾,如https://host/udid/w1。

返回 INVALID_APP_ID 是什么问题?

答:是传入的Appid 错误,应填写在顶象控制台创建的产品Appid。
可以登录控制台,在系统管理菜单下进入产品管理页面,查看对应产品的Appid。

小程序的版本号如何修改?

答:在app.json中声明插件时,修改版本号即可

{
  "plugins": {
    "captcha": {
      "version": "1.2.8",
      "provider": "wxbf8483dfc5ac6817"
    }
  }
}

一直显示“智能加载中”,怎么办?

答:请检查当前网络连接是否正常。

微信小程序插件v1.2.13版本,首次验证选择了图文点选验证,为什么验证成功触发不了回调?

答:新版插件对captchaShow这个参数做了判断,当captchaShow=true,才支持回调。

在线咨询
400-878-6123