接口地址: http(s)://tool.4759.cn/api/qrcode_decode.php
请求方式: GET(URL解析)、POST(文件上传)
返回格式: JSON(UTF-8编码)
跨域支持: 支持(Access-Control-Allow-Origin: *)
必传参数: key(所有请求)、file_url(GET)/file(POST)
支持格式: JPG、PNG、GIF、WEBP
超时时间: 10秒

本接口支持两种调用方式:
1. GET方式:传入公网图片URL解析二维码内容;
2. POST方式:直接上传图片文件解析二维码内容;
所有请求均需携带有效API Key,接口包含限流、授权、日志等完整机制。

调用说明

1. 授权验证

所有请求必须携带 key 参数(GET/POST均可),无效Key会返回401错误,调用频率超限返回429错误。

2. 请求参数

请求方式 参数名 必选 类型 说明
GET key string API授权码
file_url string 二维码图片公网URL
POST key string API授权码
file file 图片文件(仅支持JPG/PNG/GIF/WEBP)

3. 状态码说明

4. 返回参数说明

参数名 类型 说明
code int 状态码(200成功,其他为错误)
msg string 返回信息描述
data object 解码结果(contents为识别内容数组)
success bool 是否成功(true/false)
call_stats object 调用统计(used_day/remaining_day)
used_api string 接口标识

调用示例

1. GET请求(图片URL解析)

https://tool.4759.cn/api/qrcode_decode.php?key=你的API_KEY&file_url=https://tool.4759.cn/demo.png

2. PHP GET调用示例

<?php // +---------------------------------------------------------------------- // | 二维码解码API GET调用示例 // | 复制即可使用,需替换为自己的API Key // +---------------------------------------------------------------------- $api_key = "你的API授权码"; $file_url = "https://tool.4759.cn/demo.png"; $api_url = "https://tool.4759.cn/api/qrcode_decode.php?key=" . urlencode($api_key) . "&file_url=" . urlencode($file_url); // 发起请求 $ch = curl_init(); curl_setopt_array($ch, [ CURLOPT_URL => $api_url, CURLOPT_RETURNTRANSFER => true, CURLOPT_TIMEOUT => 10, CURLOPT_SSL_VERIFYPEER => false, CURLOPT_HTTPHEADER => [ 'Content-Type: application/json; charset=utf-8' ] ]); $response = curl_exec($ch); curl_close($ch); // 解析结果 $result = json_decode($response, true); if ($result['success']) { echo "解码成功:" . implode(',', $result['data']['contents']); } else { echo "失败:" . $result['msg'] . "(状态码:{$result['code']})"; } ?>

3. PHP POST上传文件示例

<?php // +---------------------------------------------------------------------- // | 二维码解码API POST调用示例 // | 复制即可使用,需替换为自己的API Key // +---------------------------------------------------------------------- $api_key = "你的API授权码"; $api_url = "https://tool.4759.cn/api/qrcode_decode.php"; // 上传的图片文件路径 $file_path = "本地图片路径/xxx.png"; $file_name = basename($file_path); // ====== 核心修复:PHP7.3兼容的文件类型检测 ====== // 替代废弃的mime_content_type(),使用finfo(PHP7.3完全支持) $file_type = 'application/octet-stream'; // 默认类型 if (file_exists($file_path)) { $finfo = new finfo(FILEINFO_MIME_TYPE); $file_type = $finfo->file($file_path); } // 构造POST数据 $post_data = [ 'key' => $api_key, 'file' => new CURLFile($file_path, $file_type, $file_name) ]; // 发起POST请求 $ch = curl_init(); curl_setopt_array($ch, [ CURLOPT_URL => $api_url, CURLOPT_RETURNTRANSFER => true, CURLOPT_POST => true, CURLOPT_POSTFIELDS => $post_data, CURLOPT_TIMEOUT => 10, CURLOPT_SSL_VERIFYPEER => false ]); $response = curl_exec($ch); curl_close($ch); // 解析结果 $result = json_decode($response, true); if ($result['success']) { echo "解码成功:" . implode(',', $result['data']['contents']); } else { echo "失败:" . $result['msg'] . "(状态码:{$result['code']})"; } ?>

4. 成功返回示例

{ "code": 200, "msg": "解码成功", "data": { "contents": ["https://4759.cn"] }, "success": true, "call_stats": { "used_day": 5, "remaining_day": 995, "tips": "小时调用次数暂不统计" }, "used_api": "4759.cn 二维码解码接口" }

5. 失败返回示例

{ "code": -1, "msg": "file_url参数不能为空", "data": { "contents": [] }, "success": false }

在线测试(GET方式)

服务器检测中...