C#實現身份證實名認證接口的示例代碼
一、什么是身份證實名認證?
身份證實名認證又叫身份證實名核驗、身份證二要素、身份實名核驗、身份證驗證,輸入姓名、身份證號,校驗此兩項是否匹配,同時返回生日、性別、籍貫等信息,同時支持港澳臺證件核驗。
二、身份證實名認證適用場景?
例如:金融領域
1.銀行開戶:在銀行辦理開戶業(yè)務時,通過身份證實名認證接口可以快速核實客戶身份信息的真實性,確保賬戶的安全性,防止欺詐行為和洗錢活動。
2.貸款審批:金融機構在審批貸款申請時,利用該接口驗證借款人的身份,評估其信用風險,提高貸款審批的準確性和效率。
3.證券交易:在開戶和交易過程中,進行身份證實名認證可以保障交易的合法性和安全性,防止非法交易和內幕交易。
例如:互聯網領域
1.網絡支付:支付平臺使用身份證實名認證接口,確認用戶身份,降低支付風險,保障用戶資金安全。
2.電子商務:電商平臺通過實名認證可以提高交易的可信度,防止虛假交易和惡意評價,保護消費者權益。
3.社交平臺:社交網絡為了確保用戶的真實性和安全性,可能會要求用戶進行身份證實名認證,防止虛假賬號和網絡詐 騙。
三、如何用C#實現接口調用?
下面我們以阿里云接口為例,通過C#實現接口調用,具體示例代碼如下:

//using System.IO;
//using System.Text;
//using System.Net;
//using System.Net.Security;
//using System.Security.Cryptography.X509Certificates;
private const String host = "https://kzidcardv1.market.alicloudapi.com";
private const String path = "/api-mall/api/id_card/check";
private const String method = "POST";
private const String appcode = "你自己的AppCode";
static void Main(string[] args)
{
String querys = "";
String bodys = "name=name&idcard=idcard";
String url = host + path;
HttpWebRequest httpRequest = null;
HttpWebResponse httpResponse = null;
if (0 < querys.Length)
{
url = url + "?" + querys;
}
if (host.Contains("https://"))
{
ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
httpRequest = (HttpWebRequest)WebRequest.CreateDefault(new Uri(url));
}
else
{
httpRequest = (HttpWebRequest)WebRequest.Create(url);
}
httpRequest.Method = method;
httpRequest.Headers.Add("Authorization", "APPCODE " + appcode);
//根據API的要求,定義相對應的Content-Type
httpRequest.ContentType = "application/x-www-form-urlencoded; charset=UTF-8";
if (0 < bodys.Length)
{
byte[] data = Encoding.UTF8.GetBytes(bodys);
using (Stream stream = httpRequest.GetRequestStream())
{
stream.Write(data, 0, data.Length);
}
}
try
{
httpResponse = (HttpWebResponse)httpRequest.GetResponse();
}
catch (WebException ex)
{
httpResponse = (HttpWebResponse)ex.Response;
}
Console.WriteLine(httpResponse.StatusCode);
Console.WriteLine(httpResponse.Method);
Console.WriteLine(httpResponse.Headers);
Stream st = httpResponse.GetResponseStream();
StreamReader reader = new StreamReader(st, Encoding.GetEncoding("utf-8"));
Console.WriteLine(reader.ReadToEnd());
Console.WriteLine("\n");
}
public static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
{
return true;
}
正確返回示例代碼如下:
{
"msg": "成功",
"success": true,
"code": 200,
"data": {
"birthday": "19840816",
"result": 1,//1.不一致 0.一致
"address": "浙江省杭州市淳安縣",//地址
"orderNo": "202406271440416095174",//訂單編號
"sex": "男",//性別
"desc": "不一致"http://描述
}
}
極少數特殊情況會返回【庫無】請留意:
(1)現役軍人、武警官兵、特殊部門人員及特殊級別官員;
(2)退役不到2年的軍人和士兵(根據軍銜、兵種不同,時間會有所不同,一般為2年);
(3)戶口遷出,且沒有在新的遷入地遷入;
(4)戶口遷入新遷入地,當地公安系統(tǒng)未將遷移信息上報到公安部(上報時間地域不同而有所差異);
(5)更改姓名,當地公安系統(tǒng)未將更改信息上報到公安部(上報時間因地域不同而有所差異);
(6)移民;
(7)未更換二代身份證;
(8)死亡。
(9)身份證號確實不存在
到此這篇關于C#實現身份證實名認證接口的示例代碼的文章就介紹到這了,更多相關C#身份證實名認證接口內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
C# 中 System.Index 結構體和 Hat 運算符(^)的使用示例
這篇文章主要介紹了C# 中 System.Index 結構體和 Hat 運算符(^)的使用示例,幫助大家更好的理解和使用C#,感興趣的朋友可以了解下2020-09-09

