日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

支付寶小程序SDK集成

本文指導您通過集成支付寶小程序喚起實人認證服務。

操作步驟

  1. 認證初始化、發起認證流程。

     Page({
      data: {
        //全局變量
        certifyInfo: {
    
        }
      },
    
      //點擊觸發認證初始化
      makeRequest: function () {
        this.fetchCertifyInfo();
      },
    
      //小程序服務端向阿里云服務端發起初始化請求,獲取認證ID和認證URL
      fetchCertifyInfo: function () {
        my.request({
          // 示例后端接口URL
          url: 'https://example.com/.../initFaceVerifyController/initFaceVerify',
          // 請求方式
          method: 'POST',
          headers: {
            'content-type': 'application/json',
          },
          dataType: 'json',
          data: {
            serviceParameters: {
              //用戶身份證件號碼
              certNo: "1******************9",
              //用戶姓名。
              certName: "張先生",
              //商戶業務頁面回調的目標地址。
              returnUrl: "https://www.aliyun.com",
            }
          },
          success: (res) => {
            if (res.data && res.statusCode === 200) {
              // 請求成功,處理返回的數據  
              this.setData({
                certifyInfo: res.data,
              });
              my.alert({
                content: "獲取成功"
              });
            } else {
              // 處理錯誤情況  
              my.alert({
                title: '請求失敗',
                content: '無法獲取用戶信息',
                buttonText: '確定'
              });
            }
          },
          fail: (error) => {
            // 請求失敗處理  
            my.alert({
              title: '網絡錯誤',
              content: '請檢查網絡連接',
              buttonText: '確定'
            });
          }
        });
      },
    
      // 調用支付寶開放能力,發起認證服務
      startAPVerify: function (options, callback) {
        // my.call 是支付寶小程序提供的API或自定義的全局函數
        my.call('startBizService', {
          name: 'open-certify',
          param: JSON.stringify(options),
        }, callback);
      },
    
      // 點擊跳轉認證頁面
      openVerifyPage: function (options) {
        this.startAPVerify({
          certifyId: this.data.certifyInfo.certifyId,
          url: this.data.certifyInfo.certifyUrl,
    
        }, (verifyResult) => {
          // 認證結果回調觸發  
          if (verifyResult.resultStatus === '9000') {
            // 驗證成功,接入方在此處處理后續的業務邏輯  
            // ...  
            return;
          }
    
          // 用戶主動取消認證  
          if (verifyResult.resultStatus === '6001') {
            // 可做下 toast 弱提示  
            my.showToast({
              content: '認證已取消',
              icon: 'none',
              duration: 2000
            });
            return;
          }
    
          const errorCode = verifyResult.result && verifyResult.result.errorCode;
          // 其他結果狀態碼判斷和處理 ...  
        });
      }
    });
    
  2. 驗證認證結果。

    回調函數帶入的參數verifyResult: { resultStatus:'xx',result: { } }說明如下:

    參數名稱

    類型

    描述

    resultStatus

    string

    認證流程結果狀態碼,具體請參見下文ResultStatus定義。

    result.certifyId

    string

    本次認證流水號certifyId。

    result.errorCode

    string

    業務異常錯誤碼。

    說明

    result的對象可能為null,API接入者代碼邏輯需要做防御性處理,避免NPE異常。

    resultStatus枚舉取值如下:

    狀態碼

    描述

    9000

    認證通過。

    6002

    網絡異常。

    6001

    用戶取消了業務流程,主動退出。

    4000

    業務異常。

    說明
    • resultStatus為6001、6002時,result對象數據為空,接入者不需要獲取result對象數據。

    • resultStatus為9000時,由于前端數據是可以修改的,業務方需要去查詢認證結果接口的最終狀態。

    當resultStatus為4000時,包含的部分錯誤碼如下表格所示 :

    錯誤碼

    描述

    UNKNOWN_ERROR

    未知異常。

    SYSTEM_ERROR

    系統異常。

    USER_IS_NOT_CERTIFY

    用戶未認證。