using System;
using System.IO;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json.Linq;
class BankCardCognition
{
private const string AppKey = "YOUR_APPKEY_HERE";
public static async Task RecognizeAsync(string ImagePath)
{
try
{
// 读取图片文件并转换为 Base64 字符串
string base64Image = Convert.ToBase64String(File.ReadAllBytes(ImagePath));
// 构建请求 URL,将 AppKey 作为查询参数
string url = $"https://api.jisuapi.com/bankcardcognition/recognize?appkey={AppKey}";
// 构建 POST 请求体,使用 x-www-form-urlencoded 格式
var postData = new StringContent($"pic={base64Image}", Encoding.UTF8, "application/x-www-form-urlencoded");
using (HttpClient client = new HttpClient())
{
// 发送 POST 请求
HttpResponseMessage response = await client.PostAsync(url, postData);
// 确保请求成功,若失败则抛出异常
response.EnsureSuccessStatusCode();
// 读取响应内容
string responseBody = await response.Content.ReadAsStringAsync();
// 解析 JSON 响应内容
JObject jsonarr = JObject.Parse(responseBody);
// 检查响应状态码
if (jsonarr["status"] != null && (int)jsonarr["status"] != 0)
{
if (jsonarr["msg"] != null)
{
// 若状态码非 0,输出错误信息
Console.WriteLine(jsonarr["msg"]);
}
return;
}
// 获取结果对象
JObject result = (JObject)jsonarr["result"];
if (result != null)
{
// 遍历结果对象,输出键值对
foreach (var property in result)
{
Console.WriteLine($"{property.Key} {property.Value}");
}
}
}
}
catch (HttpRequestException ex)
{
// 处理 HTTP 请求异常
Console.WriteLine($"请求出错: {ex.Message}");
}
catch (Exception ex)
{
// 处理其他异常
Console.WriteLine($"发生错误: {ex.Message}");
}
}
public static async Task Main()
{
// 调用识别银行卡信息的方法
await BankCardCognition.RecognizeAsync(@"C:\Users\Administrator\Desktop\000.jpg");
}
}


© 2015-2025 杭州极速互联科技有限公司 版权所有 浙ICP备17047587号-4 浙公网安备33010502005096 增值电信业务经营许可证:浙B2-20190875