ymx-aliyun-verification
    正在准备搜索索引...

    接口 YmxAliyunVerification

    阿里云 实人认证 服务

    支持三种认证方案:

    • 金融级实人认证:姓名、身份证号、人脸三要素合一验证
    • 金融级活体检测:仅进行活体检测,不比对身份信息
    • 金融级活体人脸验证:人脸比对,验证是否为同一人

    三种方案客户端使用相同的 SDK 和接口,区别在于服务端配置

    // 获取插件实例
    const aliVerify = ymx.requirePlugin('ymx-aliyun-verification') as YmxAliyunVerification;

    // 获取 MetaInfo
    const { metaInfo } = await aliVerify.getMetaInfo({
    extParams: {}
    });
    // 将 metaInfo 发送到服务端,服务端调用 InitFaceVerify 接口获取 certifyId

    // 发起认证
    const res = await aliVerify.verify({
    useMsgBox: true,
    certifyId: 'xxx',
    extParams: {
    ext_params_key_use_video: false
    }
    });
    if (res.code === '1000') {
    console.log('刷脸成功');
    // 该结果仅供参考,可通过调用服务端 DescribeFaceVerify 接口获取最终认证结果
    }
    interface YmxAliyunVerification {
        id: string;
        version: string;
        getMetaInfo(data?: GetMetaInfoData): Promise<MetaInfoResult>;
        removeListener(): Promise<void>;
        setListener(
            listener: (eventName: string, data: any) => void,
        ): Promise<void>;
        verify(data: VerifyData): Promise<VerifyResult>;
    }

    层级

    • JsApiBase
      • YmxAliyunVerification
    索引

    属性

    id: string

    获取插件 ID

    version: string

    获取插件版本,如 1.2.3

    方法

    • 获取 MetaInfo 信息

      移动端环境信息是人脸检测过程中识别设备风险的必要参数:

      • 每次认证时均需获取 MetaInfo
      • 客户端获取 MetaInfo 后,以字符串形式发送到服务端,在服务端调用 InitFaceVerify 接口时作为参数传入

      参数

      返回 Promise<MetaInfoResult>

      MetaInfo 结果

      兼容 aliZimVerify.getMetaInfo

      const aliVerify = ymx.requirePlugin('ymx-aliyun-verification') as YmxAliyunVerification;
      const res = await aliVerify.getMetaInfo({
      extParams: {}
      });
      console.log(res.metaInfo);
      // 将 metaInfo 发送到服务端,服务端调用 InitFaceVerify 接口获取 certifyId
    • 移除监听器

      返回 Promise<void>

    • 设置监听器,接收 eventName 事件名称,data 事件数据

      注意: 此接口为覆盖操作,仅保留最后一个监听器,最后的 listener 才能收到事件通知。

      参数

      • listener: (eventName: string, data: any) => void

      返回 Promise<void>

    • 发起实人认证

      接入步骤:

      1. 添加场景,取得 SceneId(认证场景ID)参数;
      2. 调用上方 getMetaInfo js 接口取得设备环境 MetaInfo 参数;
      3. 用上述 SceneId + MetaInfo 及其他(推荐 姓名+身份证号)必要参数调用 InitFaceVerify 服务器端接口,取得 CertifyId 参数,在线调试
      4. 将 CertifyId 传递给此 verify js 接口发起实人认证;
      5. js 接口回调成功后,使用上述 SceneId + CertifyId 作为参数调用 DescribeFaceVerify 服务器端接口获取实人认证结果,在线调试

      参数

      返回 Promise<VerifyResult>

      认证结果

      const aliVerify = ymx.requirePlugin('ymx-aliyun-verification') as YmxAliyunVerification;
      const res = await aliVerify.verify({
      useMsgBox: true,
      certifyId: 'xxx', // 从服务端 InitFaceVerify 接口获取
      extParams: {
      ext_params_key_use_video: false
      }
      });
      if (res.code === '1000') {
      console.log('刷脸成功');
      // 该结果仅供参考,可通过调用服务端 DescribeFaceVerify 接口获取最终认证结果
      } else {
      console.log('刷脸失败', res.code, res.msg);
      }