本文介绍了卡证核身方案纯服务端集成的.Net SDK调用示例。
前提条件
需要使用的.NET Framework版本在4.5.0版本及以上或者.NET Standard版本在2.0版本及以上。
已添加认证场景,并获取对应的场景ID。具体操作,请参见添加认证场景。
安装SDK
关于.Net SDK源代码,请参见.Net SDK。
通过
.Net
命令行安装:dotnet add package AlibabaCloud.SDK.Cloudauth20200618 --version 1.1.3 dotnet add package Aliyun.Credentials
使用包管理:
Install-Package AlibabaCloud.SDK.Cloudauth20200618 -Version 1.1.3 Install-Package Aliyun.Credentials
说明
Credentials工具配置方法,请参见身份验证配置。
示例
方式一:不使用本地证件示例
using System; using AlibabaCloud.SDK.Cloudauth20200618; using AlibabaCloud.SDK.Cloudauth20200618.Models; using AlibabaCloud.TeaUtil.Models; using AlibabaCloud.RPCClient.Models; namespace ElementSmartVerifyTest { class Program { static void Main(string[] args) { // 通过以下代码创建Config实例并初始化。 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config { //通过阿里云Credentials工具从环境变量中读取AccessKey,来实现API访问的身份验证。 Credential=new Aliyun.Credentials.Client(null) }; // 设置Endpoint,Endpoint为固定值。 config.Endpoint = "cloudauth.aliyuncs.com"; // 设置RegionId,RegionId为固定值。 config.RegionId = "cn-hangzhou"; // 设置http代理。 // config.HttpProxy = "http://xxx.xxx.xxx.xxx:9999"; // 设置https代理。 // config.HttpsProxy = "https://username:password@xxx.xxx.xxx.xxx:9999"; Client client = new Client(config); // 通过以下代码创建RuntimeObject实例并设置运行参数。 RuntimeOptions runtimeObject = new RuntimeOptions(); // 设置调用超时时间(单位ms)。 runtimeObject.ReadTimeout = 10000; // 设置连接超时时间(单位ms)。 runtimeObject.ConnectTimeout = 10000; // 设置是否自动重试。 runtimeObject.Autoretry = false; // 通过以下代码创建API请求并设置参数。 ElementSmartVerifyRequest request = new ElementSmartVerifyRequest(); request.SceneId = 200xxxx; // 设置商户请求的唯一标识。 request.OuterOrderNo = "xxx"; // 模式。 request.Mode = "OCR_VERIFY_ID_NAME"; // 固定值。 request.CertType = "IDENTITY_CARD"; // request.CertName = "张三"; // request.CertNo = "18位身份证号"; // request.CertNationalEmblemUrl = "https://www.aliyun.com/test.jpeg"; request.CertUrl = "https://www.aliyun.com/test.jpeg"; // 通过以下代码发起请求并处理应答和异常。 ElementSmartVerifyResponse response = client.ElementSmartVerify(request, runtimeObject); Console.WriteLine(response.RequestId); Console.WriteLine(response.Message); Console.WriteLine(response.Code); Console.WriteLine(response.ResultObject.Passed); Console.WriteLine(response.ResultObject.CertifyId); Console.WriteLine(response.ResultObject.SubCode); Console.WriteLine(response.ResultObject.MaterialInfo); } } }
方式二:使用本地证件示例
using System; using System.IO; using AlibabaCloud.SDK.Cloudauth20200618; using AlibabaCloud.SDK.Cloudauth20200618.Models; using AlibabaCloud.TeaUtil.Models; using AlibabaCloud.RPCClient.Models; namespace ElementSmartVerifyTest { class Program { static void Main(string[] args) { // 通过以下代码创建Config实例并初始化。 AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config { //通过阿里云Credentials工具从环境变量中读取AccessKey,来实现API访问的身份验证。 Credential=new Aliyun.Credentials.Client(null) }; // 设置Endpoint,Endpoint为固定值。 config.Endpoint = "cloudauth.aliyuncs.com"; // 设置RegionId,RegionId为固定值。 config.RegionId = "cn-hangzhou"; // 设置http代理。 // config.HttpProxy = "http://xxx.xxx.xxx.xxx:9999"; // 设置https代理。 // config.HttpsProxy = "https://username:password@xxx.xxx.xxx.xxx:9999"; Client client = new Client(config); // 通过以下代码创建RuntimeObject实例并设置运行参数。 RuntimeOptions runtimeObject = new RuntimeOptions(); // 设置调用超时时间(单位ms)。 runtimeObject.ReadTimeout = 10000; // 设置连接超时时间(单位ms)。 runtimeObject.ConnectTimeout = 10000; // 设置是否自动重试。 runtimeObject.Autoretry = false; // 通过以下代码创建API请求并设置参数。 ElementSmartVerifyAdvanceRequest request = new ElementSmartVerifyAdvanceRequest(); request.SceneId = 200xxxx; // 设置商户请求的唯一标识。 request.OuterOrderNo = "xxx"; // 模式。 request.Mode = "OCR_VERIFY_ID_NAME"; // 固定值。 request.CertType = "IDENTITY_CARD"; // request.CertName = "张三"; // request.CertNo = "18位身份证号"; // request.CertNationalEmblemUrl = "https://www.aliyun.com/test.jpeg"; // 设置本地文件路径。 FileStream fs = File.OpenRead("xxxx"); request.CertFileObject = fs; // 通过以下代码发起请求并处理应答和异常。 ElementSmartVerifyResponse response = client.ElementSmartVerifyAdvance(request, runtimeObject); Console.WriteLine(response.RequestId); Console.WriteLine(response.Message); Console.WriteLine(response.Code); Console.WriteLine(response.ResultObject.Passed); Console.WriteLine(response.ResultObject.SubCode); Console.WriteLine(response.ResultObject.MaterialInfo); // 通过以下代码关闭资源。 fs.Close(); } } }
反馈
- 本页导读