跳到正文

内容辅助

WiFi 凭据、联系人名片(vCard)和地理位置的二维码使用特定的文本格式。这些端点会为你组装载荷字符串,你可以直接把它作为 content 传给 /api/qr/generate。

三个端点都接受 JSON、返回 JSON。它们不做渲染,只负责构建字符串。

WiFi

POST /api/qr/content/wifi
{
  "ssid": "MyNetwork",
  "password": "supersecret",
  "encryption": "WPA",
  "hidden": false
}

响应:

{
  "success": true,
  "content": "WIFI:T:WPA;S:MyNetwork;P:supersecret;H:false;;"
}

encryption:WPA、WEP 或 nopass。

vCard

POST /api/qr/content/vcard
{
  "firstName": "Ada",
  "lastName": "Lovelace",
  "organization": "Analytical Engine Co.",
  "title": "Programmer",
  "phone": "+44 20 7946 0958",
  "email": "ada@example.com",
  "url": "https://adalovelace.example",
  "address": "10 Downing St, London"
}

响应:一个格式完整、可直接编码的 vCard 3.0 字符串。

Geo

POST /api/qr/content/geo
{
  "latitude": 40.4168,
  "longitude": -3.7038,
  "query": "Plaza Mayor, Madrid"
}

响应:

{
  "success": true,
  "content": "geo:40.4168,-3.7038?q=Plaza%20Mayor%2C%20Madrid"
}

query 为可选项,会添加一个 Google 地图 / Apple 地图可识别的标签。

为什么需要它们

你也可以自己拼接字符串,但这些格式有不少边界情况(WiFi 密码中的转义、vCard 的折行、Geo 中的 URI 编码)。辅助端点会处理这些问题,免得一个笔误就让客户拿到一个把“MyNetwork P:supersecret”当作 SSID 打开的二维码。

用法模式

1. POST to /api/qr/content/{wifi|vcard|geo}     → get the content string
2. POST that string as `content` to /api/qr/generate → get the QR

如果想让 AI 为 WiFi / vCard / Geo 二维码设计样式,也可以把组装好的字符串直接作为 content 传给 AI 端点。

代码示例