POST /api/qr/generate
根据显式配置生成二维码。这是主要的渲染端点,编辑器界面和 AI 端点最终都会汇集到这里。
请求
Content-Type: application/json 或 multipart/form-data(用于上传 logo / 背景的二进制文件)。
请求体结构:一个 QrConfig 对象。
最小示例:
Multipart 上传(logo 文件)
curl -X POST https://api.qr-branding.com/api/qr/generate \
-H "X-RapidAPI-Proxy-Secret: <secret>" \
-F 'config={"content":"https://yourbrand.com","logoSizePercent":18,"eccLevel":"H"}' \
-F "logoFile=@./brand-mark.png"
config 字段是 JSON 编码的字符串。logoFile 和 backgroundFile 是二进制部分(PNG / JPG / GIF / BMP / WebP,最大 10 MB)。
响应(base64 模式,默认)
{
"success": true,
"qrBase64": "iVBORw0KGgoAAAANSUhEUgAA…",
"format": "png",
"contentType": "image/png",
"sizeBytes": 38291
}
响应(二进制模式)
{ "responseType": "binary" }
返回文件的原始字节,并附带相应的 Content-Type 和 Content-Disposition: attachment; filename="qrcode.png"。
验证
引擎会运行完整的扫描保证流程。常见的拒绝原因:
| 代码 | 含义 | 解决方法 |
|---|---|---|
CONTENT_TOO_LONG | 编码字符串超过 4296 个字符 | 缩短内容 / 使用短链接服务 |
LOW_CONTRAST | 前景与背景对比度 < 4:1 | 选择更深的前景色或更浅的背景色 |
LOGO_TOO_LARGE | ECC 低于 H 时 logoSizePercent > 25 | 提高到 H 或缩小 logo |
INVALID_HEX | 颜色字符串不是 #RGB、#RRGGBB、#RRGGBBAA | 修正颜色 |
INVALID_LLM_MODEL | 仅出现在 AI 端点 | 参见 AI 模式 |
另请参阅
- QrConfig 参考:所有可接受的参数
- POST /api/qr/ai/generate:同一个引擎,由 AI 生成配置