.NET调用阿里云人脸核身服务端 (ExecuteServerSideVerification)简易流程保姆级教学

需要注意的是,以下内容仅限基础调用

功能说明

该功能是输入核验人的姓名和身份证以及人脸照片,去阿里库里面匹配,3个信息是否一致,一致则验证通过,需要注意的是,人脸有遮挡,或者刘海,口罩遮挡等,都有可能造成核验失败,应用场景可参考官方文档

注意

如果你完全没有基础,请先移步以下文章,因为这两篇文章关联很高
阿里人脸1:1教程

1.如果您还没有一个属于自己的阿里AccessKey,请先参考以下文章去获取
阿里人脸1:1教程

2.如果您还没有开通阿里视觉的权限,也先请移步以下文章去获取
阿里人脸1:1教程

3.当你开通好阿里视觉的权限后,就可以根据阿里视觉控制台去获取基本的demo,需要注意账户需要有余额

4.做好以上准备后我们先进入阿里视觉控制台
视觉控制台传送门

5.点击在线调试后,按照要求去输入,我这边因为测试就不输入我的信息哈,我测过了,你也可以输入自己的测测试试,要确保能调通

6.复制Demo中的代码

csharp 复制代码
// This file is auto-generated, don't edit it. Thanks.

using System;
using System.Collections;
using System.Collections.Generic;
using System.IO;
using System.Threading.Tasks;

using Tea;
using Tea.Utils;


namespace AlibabaCloud.SDK.Sample
{
    public class Sample 
    {

        /**
         * 使用AK&SK初始化账号Client
         * @return Client
         * @throws Exception
         */
        public static AlibabaCloud.SDK.Facebody20200910.Client CreateClient()
        {
            // 工程代码泄露可能会导致 AccessKey 泄露,并威胁账号下所有资源的安全性。以下代码示例仅供参考。
            // 建议使用更安全的 STS 方式,更多鉴权访问方式请参见:https://help.aliyun.com/document_detail/378671.html。
            AlibabaCloud.OpenApiClient.Models.Config config = new AlibabaCloud.OpenApiClient.Models.Config
            {
                // 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_ID。
                AccessKeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"),
                // 必填,请确保代码运行环境设置了环境变量 ALIBABA_CLOUD_ACCESS_KEY_SECRET。
                AccessKeySecret = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"),
            };
            // Endpoint 请参考 https://api.aliyun.com/product/facebody
            config.Endpoint = "facebody.cn-shanghai.aliyuncs.com";
            return new AlibabaCloud.SDK.Facebody20200910.Client(config);
        }

        public static void Main(string[] args)
        {
            AlibabaCloud.SDK.Facebody20200910.Client client = CreateClient();
            AlibabaCloud.SDK.Facebody20200910.Models.ExecuteServerSideVerificationRequest executeServerSideVerificationRequest = new AlibabaCloud.SDK.Facebody20200910.Models.ExecuteServerSideVerificationRequest
            {
                CertificateName = "姓名",
                CertificateNumber = "身份证",
                FacialPictureData = "本地base64",
            };
            AlibabaCloud.TeaUtil.Models.RuntimeOptions runtime = new AlibabaCloud.TeaUtil.Models.RuntimeOptions();
            Dictionary<string, string> headers = new Dictionary<string, string>(){};
            try
            {
                // 复制代码运行请自行打印 API 的返回值
                client.ExecuteServerSideVerificationWithOptions(executeServerSideVerificationRequest, headers, runtime);
            }
            catch (TeaException error)
            {
                // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
                // 错误 message
                Console.WriteLine(error.Message);
                // 诊断地址
                Console.WriteLine(error.Data["Recommend"]);
                AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
            }
            catch (Exception _error)
            {
                TeaException error = new TeaException(new Dictionary<string, object>
                {
                    { "message", _error.Message }
                });
                // 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
                // 错误 message
                Console.WriteLine(error.Message);
                // 诊断地址
                Console.WriteLine(error.Data["Recommend"]);
                AlibabaCloud.TeaUtil.Common.AssertAsString(error.Message);
            }
        }


    }
}

7.如果不知道怎么将本地图片转为为base64的话,可以移步以下文章
阿里人脸1:1教程

8.如果引用报错,也可以移步以下文章
阿里人脸1:1教程

9.之后就可以在本地继续调试了

相关推荐
界面开发小八哥1 小时前
界面控件DevExpress v24.2新版亮点 - 支持.NET9、增强跨平台性
.net·界面控件·devexpress·ui开发·.net 9
VinciYan13 小时前
基于Jenkins+Docker的自动化部署实践——整合Git与Python脚本实现远程部署
python·ubuntu·docker·自动化·jenkins·.net·运维开发
码农君莫笑13 小时前
使用blazor开发信息管理系统的应用场景
数据库·信息可视化·c#·.net·visual studio
老刘莱国瑞15 小时前
STM32 与 AS608 指纹模块的调试与应用
python·物联网·阿里云
de之梦-御风17 小时前
【进阶编程】MVVM框架的每层对应那些业务
.net·个人开发·mvvm
Zhen (Evan) Wang17 小时前
利用.NET Upgrade Assitant对项目进行升级
.net
小林coding17 小时前
阿里云 Java 后端一面,什么难度?
java·后端·mysql·spring·阿里云
Anna_Tong18 小时前
云原生大数据计算服务 MaxCompute 是什么?
大数据·阿里云·云原生·maxcompute·odps
界面开发小八哥18 小时前
DevExpress WPF中文教程:Grid - 如何移动和调整列大小?(二)
ui·.net·wpf·界面控件·devexpress·ui开发