全部产品
Search
文档中心

ID Verification:SDK调用示例

更新时间:Mar 10, 2026

本文介绍eKYC_NDI方案Web接入服务端SDK调用示例。

SDK安装与源码下载

您可根据业务实际的技术选型,选择合适的SDK语言进行集成。

支持语言

环境要求

SDK安装

Github源码地址

Java

JDK 1.8及以上版本

下载Java SDK

Alibaba Cloud Green SDK for Java

Python

Python 3.0及以上版本

下载Python SDK

Alibaba Cloud Green SDK for Python

Typescript

Node.js 8.0及以上版本

下载TypeScript SDK

Alibaba Cloud Green SDK for Typescript

Go

Go 1.12.0及以上版本

下载Go SDK

Alibaba Cloud Green SDK for Go

PHP

PHP 5.6及以上版本

下载PHP SDK

Alibaba Cloud Green SDK for PHP

C#

.NET Framework 4.5.0及以上版本或.NET Core 2.0及以上版本

下载C# SDK

Alibaba Cloud Green SDK for C#

C++

  • 安装支持C++ 11或更高版本的编译器:

    • Windows: Visual Studio 2015 或以上版本

    • Linux: GCC 4.9或以上版本

  • 安装 CMake 3.0或以上版本。

  • 建议4 GB或以上内存。

  • 安装依赖库,具体参考必备依赖库

下载C++ SDK

Alibaba Cloud Green SDK for C++

SDK​调用示例

以下为您介绍不同语言SDK的调用示例。

Java

本示例SDK依赖如下,建议实际配置时获取最新依赖。

<dependency>
  <groupId>com.aliyun</groupId>
  <artifactId>cloudauth_intl20220809</artifactId>
  <version>3.17.1</version>
</dependency>

Initialize接口调用示例

import com.aliyun.cloudauth_intl20220809.Client;
import com.aliyun.cloudauth_intl20220809.models.InitializeRequest;
import com.aliyun.cloudauth_intl20220809.models.InitializeResponse;
import com.aliyun.teaopenapi.models.Config;



public class InitializeDemo {

    public static void main(String[] args) throws Exception {
        // Build client
        Config config = new Config();
        config.setAccessKeyId("your access key id");
        config.setAccessKeySecret("your access key secret");
        config.setEndpoint("cloudauth-intl.cn-hongkong.aliyuncs.com");
        config.setRegionId("cn-hongkong");

        Client client = new Client(config);

        // Build request
        InitializeRequest request = new InitializeRequest();
        request.setProductCode("eKYC_PRO");
        request.setMerchantBizId("***");
        request.setMerchantUserId("***");
        request.setMetaInfo("***");
        request.setDocType("01000000");
        request.setAuthorize("T");

        // Invoke API
        InitializeResponse response = client.initialize(request);

        // Get result from response
        Integer statusCode = response.getStatusCode();
        String code = response.getBody().getCode();
        String transactionId = response.getBody().getResult().getTransactionId();
        System.out.println("statusCode:"+statusCode+"=== code:"+code +"==== transactionId:"+transactionId);
    }


}

CheckResult接口调用示例

import com.aliyun.cloudauth_intl20220809.Client;
import com.aliyun.cloudauth_intl20220809.models.CheckResultRequest;
import com.aliyun.cloudauth_intl20220809.models.CheckResultResponse;
import com.aliyun.teaopenapi.models.Config;
 
 
public class CheckResultDemo {
 
    public static void main(String[] args) throws Exception {
        // Build client
        Config config = new Config();
        config.setAccessKeyId("your access key id");
        config.setAccessKeySecret("your access key secret");
        config.setEndpoint("cloudauth-intl.cn-hongkong.aliyuncs.com");
        config.setRegionId("cn-hongkong");
        Client client = new Client(config);
 
        // Build request
        CheckResultRequest request = new CheckResultRequest();
 
        request.setMerchantBizId("****");
        request.setTransactionId("****");
        request.setIsReturnImage("****");
 
        // Invoke API
        CheckResultResponse response = client.checkResult(request);
 
        // Get result from response
        Integer statusCode = response.getStatusCode();
        String code = response.getBody().getCode();
        String passed = response.getBody().getResult().getPassed();
        String subCode = response.getBody().getResult().getSubCode();
        String extFaceInfo = response.getBody().getResult().getExtFaceInfo();
        String extIdInfo = response.getBody().getResult().getExtIdInfo();
    }
 
}

PHP

本示例SDK依赖如下,建议实际配置时获取最新依赖。

  • 通过Composer来管理项目依赖(推荐)

    composer require alibabacloud/cloudauth-intl-20220809 3.17.1
  • 使用composer.json文件

    {
      "require": {
        "alibabacloud/cloudauth-intl-20220809": "2.0.2"
      }
    }

Initialize接口调用示例

<?php
namespace AlibabaCloud\SDK\Sample;
 
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Models\InitializeRequest;
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Cloudauthintl;
use Darabonba\OpenApi\Models\Config;
 
class Initialize {
 
 public static function main(){
 // Build client
 $config = new Config([
 "accessKeyId" => "your accessKeyId",
 "accessKeySecret" => "your accessKeySecret",
 "endpoint" => "cloudauth-intl.cn-hongkong.aliyuncs.com"
 ]);
 $client = new Cloudauthintl($config);
 
 // Build request
 $request = new InitializeRequest([
 "productCode"=>"eKYC",
 "docType"=>"****",
 "merchantBizId"=>"****",
 "merchantUserId"=>"****",
 "authorize"=>"T",
 "metaInfo"=>"{\"apdi****.0.0\"}"
 ]);
 
 // Invoke API
 $response = $client->initialize($request);
 
 // Get result
 var_dump($response->statusCode);
 var_dump($response->body->requestId);
 var_dump($response->body->result->transactionId);
 }
 
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
 require_once $path;
}
Initialize::main();

CheckResult接口调用示例

<?php
namespace AlibabaCloud\SDK\Sample;
 
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Models\CheckResultRequest;
use AlibabaCloud\SDK\Cloudauthintl\V20220809\Cloudauthintl;
use Darabonba\OpenApi\Models\Config;
 
class CheckResult {
 
 public static function main(){
 // Build client
 $config = new Config([
 "accessKeyId" => "your accessKeyId",
 "accessKeySecret" => "your accessKeySecret",
 "endpoint" => "cloudauth-intl.cn-hongkong.aliyuncs.com"
 ]);
 $client = new Cloudauthintl($config);
 
 // Build request
 $request = new CheckResultRequest([
 "merchantBizId"=>"***",
 "transactionId"=>"G00000****05816"
 ]);
 
 // Invoke API
 $response = $client->checkResult($request);
 
 // Get result
 var_dump($response->statusCode);
 var_dump($response->body->requestId);
 var_dump($response->body->result->passed);
 var_dump($response->body->result->subCode);
 var_dump($response->body->result->extFaceInfo);
 var_dump($response->body->result->extIdInfo);
 }
 
}
$path = __DIR__ . \DIRECTORY_SEPARATOR . \DIRECTORY_SEPARATOR . 'vendor' . \DIRECTORY_SEPARATOR . 'autoload.php';
if (file_exists($path)) {
 require_once $path;
}
CheckResult::main();

Python

  • 引入依赖包

    pip install alibabacloud_tea_openapi==0.2.5
  • 安装SDK。实际配置建议获取最新依赖。

    pip install alibabacloud_cloudauth_intl20220809==3.17.1

Initialize接口调用示例

from alibabacloud_cloudauth_intl20220809.client import Client as CloudauthClient
from alibabacloud_cloudauth_intl20220809 import models as cloudauth_models
from alibabacloud_tea_openapi import models as open_api_models


class Initialize:
    def __init__(self):
        pass

    @staticmethod
    def main() -> None:


        # Build client
        config = open_api_models.Config(
            access_key_id='your access_key_id',
            access_key_secret='your access_key_secret',
            endpoint="cloudauth-intl.cn-hongkong.aliyuncs.com"
        )
        client = CloudauthClient(config)


        # Build request
        request = cloudauth_models.InitializeRequest(
            merchant_biz_id="***",
            merchant_user_id="***",
            meta_info="{\"apdid****mVer\":\"1.0.0\"}",
            authorize="T",
            product_code="eKYC",
            doc_type="00000001"
        )

        # Invoke API
        response = client.initialize(request)

        # Get result
        print(response.status_code)
        print(response.body.request_id)
        print(response.body.result.transaction_id)



if __name__ == '__main__':
    Initialize.main()

CheckResult接口调用示例

from alibabacloud_cloudauth_intl20220809.client import Client as CloudauthClient
from alibabacloud_cloudauth_intl20220809 import models as cloudauth_models
from alibabacloud_tea_openapi import models as open_api_models
 
 
class CheckResult:
 def __init__(self):
 pass
 
 @staticmethod
 def main() -> None:
 # Build client
 config = open_api_models.Config(
 access_key_id='your access_key_id',
 access_key_secret='your access_key_secret',
 endpoint="cloudauth-intl.cn-hongkong.aliyuncs.com"
 )
 client = CloudauthClient(config)
 
 # Build request
 request = cloudauth_models.CheckResultRequest(
 transaction_id="****",
 merchant_biz_id="****"
 )
 
 # Invoke API
 response = client.check_result(request)
 
 # Get result
 print(response.status_code)
 print(response.body.request_id)
 print(response.body.result.passed)
 print(response.body.result.sub_code)
 print(response.body.result.ext_face_info)
 print(response.body.result.ext_id_info) 
 
 
if __name__ == '__main__':
 CheckResult.main()

Go

  • 引入依赖包

    go get github.com/alibabacloud-go/darabonba-openapi/v2/client
    go get github.com/alibabacloud-go/tea
  • 安装SDK。实际配置建议获取最新依赖。

    go get github.com/alibabacloud-go/cloudauth-intl-20220809/v3

Initialize接口调用示例

package main

import (
 "fmt"
 openapi "github.com/alibabacloud-go/darabonba-openapi/client"
 cloudauth "github.com/alibabacloud-go/cloudauth-intl-20220809/client"
 "github.com/alibabacloud-go/tea/tea"
)

func main() {
 config := &openapi.Config{
 AccessKeyId: tea.String("your AccessKeyId"),
 AccessKeySecret: tea.String("your AccessKeySecret"),
 Endpoint: tea.String("cloudauth-intl.cn-hongkong.aliyuncs.com"),
 }
 client, _ := cloudauth.NewClient(config)

 request := &cloudauth.InitializeRequest{
 ProductCode: tea.String("eKYC"),
 Authorize: tea.String("T"),
 MetaInfo : tea.String("{\"apdidT****.0.0\"}"),
 MerchantBizId : tea.String("****"),
 MerchantUserId : tea.String("****"),
 }

 response, err := client.Initialize(request)

 if err != nil{
 fmt.Println(err)
 return
 }
 fmt.Println(*response.Body.RequestId)
 fmt.Println(*response.Body.Result.TransactionId)

}

CheckResult接口调用示例

package main

import (
 "fmt"
 openapi "github.com/alibabacloud-go/darabonba-openapi/client"
 cloudauth "github.com/alibabacloud-go/cloudauth-intl-20220809/client"
 "github.com/alibabacloud-go/tea/tea"
)

func main() {
 config := &openapi.Config{
 AccessKeyId: tea.String("your AccessKeyId"),
 AccessKeySecret: tea.String("your AccessKeySecret"),
 Endpoint: tea.String("cloudauth-intl.cn-hongkong.aliyuncs.com"),
 }
 client, _ := cloudauth.NewClient(config)

 request := &cloudauth.CheckResultRequest{
 MerchantBizId : tea.String("****"),
 TransactionId : tea.String("G00****00911"),
 }

 response, err := client.CheckResult(request)

 if err != nil{
 fmt.Println(err)
 return
 }
 fmt.Println(*response.Body.RequestId)
 fmt.Println(*response.Body.Result.Passed)
 fmt.Println(*response.Body.Result.SubCode)
 fmt.Println(*response.Body.Result.ExtFaceInfo)
 fmt.Println(*response.Body.Result.ExtIdInfo)

}

.NET

本示例SDK依赖如下,建议实际配置时获取最新依赖。

  • 通过.NET命令行安装

    dotnet add package AlibabaCloud.SDK.Cloudauth-intl20220809 --version 3.14.1
  • 使用包管理安装

    Install-Package AlibabaCloud.SDK.Cloudauth-intl20220809 -Version 3.14.1

Initialize接口调用示例

using AlibabaCloud.SDK.Cloudauth_intl20220809.Models;
 
namespace Demo
{
 public class InitializeDemo
 {
 public static void Main(string[] args) {
 // Build client
 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config()
 {
 AccessKeyId = "your access key id",
 AccessKeySecret = "your access key secret",
 Endpoint = "cloudauth-intl.cn-hongkong.aliyuncs.com",
 };
 AlibabaCloud.SDK.Cloudauth_intl20220809.Client client = new AlibabaCloud.SDK.Cloudauth_intl20220809.Client(config);
 
 
 // Build request
 AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest request = new AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest
 {
 ProductCode = "eKYC",
 Authorize = "T",
 MerchantBizId = "****",
 MerchantUserId = "****"
 MetaInfo = "****",
 };
 
 // Invoke API
 InitializeResponse response = client.Initialize(request);
 
 // Get result
 Console.WriteLine(response.StatusCode);
 Console.WriteLine(response.Body.RequestId);
 Console.WriteLine(response.Body.Code);
 Console.WriteLine(response.Body.Message);
 Console.WriteLine(response.Body.Result.TransactionId);
 }
 }
}

CheckResult接口调用示例

using AlibabaCloud.SDK.Cloudauth_intl20220809.Models;
 
namespace Demo
{
 public class InitializeDemo
 {
 public static void Main(string[] args) {
 // Build client
 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config()
 {
 AccessKeyId = "your access key id",
 AccessKeySecret = "your access key secret",
 Endpoint = "cloudauth-intl.cn-hongkong.aliyuncs.com",
 };
 AlibabaCloud.SDK.Cloudauth_intl20220809.Client client = new AlibabaCloud.SDK.Cloudauth_intl20220809.Client(config);
 
 
 // Build request
 AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest request = new AlibabaCloud.SDK.Cloudauth_intl20220809.Models.InitializeRequest
 {
 ProductCode = "eKYC",
 Authorize = "T",
 MerchantBizId = "****",
 MerchantUserId = "****"
 MetaInfo = "****",
 };
 
 // Invoke API
 InitializeResponse response = client.Initialize(request);
 
 // Get result
 Console.WriteLine(response.StatusCode);
 Console.WriteLine(response.Body.RequestId);
 Console.WriteLine(response.Body.Code);
 Console.WriteLine(response.Body.Message);
 Console.WriteLine(response.Body.Result.TransactionId);
 }
 }
}

Node.js

  • 引入依赖包

    npm install @alicloud/openapi-client
  • 安装SDK。实际配置建议获取最新依赖。

    npm install @alicloud/cloudauth-intl20220809@2.0.2

Initialize接口调用示例

const {Config} = require("@alicloud/openapi-client");
const CloudAuth = require("@alicloud/cloudauth-intl20220809");
const Client = CloudAuth.default;
 
async function main(){
 
    // Build client
    const config = new Config({
        accessKeyId: "your accessKeyId",
        accessKeySecret: "your accessKeySecret",
        endpoint: "cloudauth-intl.cn-hongkong.aliyuncs.com"
    });
    const client = new Client(config);
 
    // Build request
    const request = new CloudAuth.InitializeRequest({
        productCode: "eKYC",
        authorize: "T",
        metaInfo : "***",
        merchantBizId : "***",
        merchantUserId :  "***"
    });
 
    // Invoke API
    const response = await client.initialize(request);
 
    // Get result
    console.log(response.body.requestId);
    console.log(response.body.result.transactionId);
 
}
 
main().then(function (response) {});

CheckResult接口调用示例

const {Config} = require("@alicloud/openapi-client");
const CloudAuth = require("@alicloud/cloudauth-intl20220809");
const Client = CloudAuth.default;
 
async function main(){
 
    // Build client
    const config = new Config({
        accessKeyId: "your accessKeyId",
        accessKeySecret: "your accessKeySecret",
        endpoint: "cloudauth-intl.cn-hongkong.aliyuncs.com"
    });
    const client = new Client(config);
 
    // Build request
    const request = new CloudAuth.CheckResultRequest({
        merchantBizId: "XXXX",
        transactionId: "G00000****500911"
    });
 
    // Invoke API
    const response = await client.checkResult(request);
 
    // Get result
    console.log(response.body.requestId);
    console.log(response.body.result.passed);
    console.log(response.body.result.subCode);
    console.log(response.body.result.extFaceInfo);
    console.log(response.body.result.extIdInfo); 
}
 
main().then(function (response) {});