C# 调用免费 API 生成二维码卡片示例

Finn
Finn
发布时间:2026-10-14| 5人浏览过
原创

在 Web 开发中,将联系人信息转换为二维码是常见需求。本文展示如何利用 C# 构造 HTTP 请求,调用在线工具生成带有自定义 Logo 和格式的 MECARD 电子名片二维码。

原理与准备工作

该方法的核心在于拼接标准的 MECARD 协议字符串,并附加至支持文本转图片的外部 API 地址。无需本地安装复杂的二维码库,适合快速原型开发或轻量级应用场景。

第1步:构建 MECARD 数据串

目的:将姓名、电话和邮箱打包为标准格式。

入口:C# 类库方法。

动作:

  • 定义字符串前缀:MECARD:N:
  • 依次追加名称(N)、电话(TEL)和邮箱(EMAIL),各字段间以分号分隔。
  • 末尾添加分号结束标记。

第2步:组装 API 请求 URL

目的:生成最终的图片获取链接。

入口:使用 联图 等开源免费的二维码生成服务。

动作:

  • 基础地址示例:http://qr.liantu.com/api.php(注:实际使用时请确认该服务的稳定性及是否已失效,当前仅作代码逻辑演示)。
  • 拼接参数:?text= + 上一步生成的 MEcard 字符串。
  • 可选扩展:若需添加 Logo,追加 &logo=图片URL;亦可调整背景色(bg)、前景色(fg)及尺寸(w)。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;

/// <summary>
/// 简单的二维码生成辅助类(基于外部API)
/// 注意:依赖外部服务可用性
/// </summary>
public class Qr
{
    public const string api = "http://qr.liantu.com/api.php";

    /// <summary>
    /// 根据 URL 和参数 返回地址
    /// </summary>
    public static string GenerationCard(string name, string tel, string email, string logo = "")
    {
        string RequestUrl = api;
        // 构建 MECARD 格式: MECARD:N:Name;TEL:123456;EMAIL:test@test.com;
        string mecard = "MECARD:N:" + name + ";TEL:" + tel + ";EMAIL:" + email + ";";
        RequestUrl += "?text=" + HttpUtility.UrlEncode(mecard);
        if (logo != "")
        {
            RequestUrl += "&logo=" + HttpUtility.UrlEncode(logo);
        }
        return RequestUrl;
    }
}

重要参数说明:

  • name: 联系人姓名
  • tel: 联系电话
  • email: 电子邮箱
  • logo: (可选) 居中显示的 Logo 网络地址

第3步:前端调用与渲染

目的:在 ASP.NET WebForm 页面中显示生成的二维码。

操作:

  • 创建一个新的 .aspx 页面。
  • 在后台代码 (.cs) 中实例化 Qr 类,传入具体数据。
  • 获取返回的完整 URL,将其赋值给 HTML 中 <img> 标签的 src 属性即可直接展示。

注意事项与排错

1. 服务稳定性:示例中使用的 liantu.com 为第三方免费服务,可能存在访问受限、下线或频率限制。生产环境建议替换为稳定的商业 API 或本地生成库(如 ZBar、ThoughtWorks.QRCode)。

2. 中文编码:如果名片中包含中文,务必对 text 参数进行 HttpUtility.UrlEncode 处理,否则生成的二维码可能无法被扫描设备正确识别乱码。

3. 隐私安全:通过公开 API 传输敏感个人信息需谨慎,避免中间人攻击或日志泄露。

总结

通过简单的字符串拼接,C# 开发者可以快速利用现成 API 解决基础的二维码生成需求。虽然此方案便捷,但在涉及高并发或对数据安全要求严格的场景中,应转向本地离线生成方案。

以上就是 C# 调用免费 API 生成二维码及电子名片的详细内容,更多关于 C# 二维码开发的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。