接口概览

爱影解析提供简单易用的HTTP API,支持主流视频平台的视频解析服务。您可以通过API解析腾讯视频、优酷、爱奇艺、芒果TV等平台的视频链接。

API基础地址:https://jiexi.fengye.wang
接口版本:V1

接口特点

  • ✅ 支持 GET 和 POST 请求方式
  • ✅ 支持10+主流视频平台解析
  • ✅ 多级缓存加速,毫秒级响应
  • ✅ 按次扣费,解析成功才扣配额
  • ✅ TraceID全链路追踪

认证方式

所有API请求都需要通过Token进行认证。Token可以在用户中心的 "API令牌" 页面创建和管理。

安全提示:请妥善保管您的API Token,不要在客户端代码中暴露Token。如需在公共环境使用,建议配合后端服务调用。

请求方式

将Token作为URL参数传递:

URL参数
/api/send?token=YOUR_API_TOKEN

配额说明

系统采用三级配额管理机制:

配额类型说明重置周期
日配额每天最多调用次数每天0点重置
月配额每月最多调用次数每月1号重置
总配额整个使用期间最多调用次数永不重置
扣费规则:按次扣费,每次成功解析扣除1次配额。缓存命中不扣配额。

视频解析

通过此接口解析视频链接,返回可播放的视频地址。支持腾讯视频、优酷、爱奇艺、芒果TV等主流平台。

请求地址

GET/POST https://jiexi.fengye.wang/api/parse/video

请求参数

参数名类型必填说明
tokenstringAPI令牌
urlstring视频链接地址
支持平台:腾讯视频、优酷、爱奇艺、芒果TV、哔哩哔哩、搜狐视频、PPTV、M3U8源等

响应参数

参数名类型说明
statusboolean请求是否成功
codeint状态码,200表示成功
msgstring响应消息
data.urlstring解析后的视频地址
data.platformstring视频平台标识
data.cache_hitboolean是否命中缓存
data.response_timestring响应时间
data.remaining_quotaobject剩余配额信息

成功响应示例

200 OK - 解析成功
{
    "status": true,
    "code": 200,
    "msg": "解析成功(来自缓存)",
    "data": {
        "url": "https://example.com/video.m3u8",
        "platform": "v.qq.com",
        "cache_hit": true,
        "response_time": "12ms",
        "remaining_quota": {
            "daily": 79,
            "monthly": 2979,
            "total": 379
        }
    },
    "time": 1774967730
}

错误响应示例

401 Unauthorized
{
    "status": false,
    "code": 401,
    "msg": "Token无效或已过期",
    "data": [],
    "time": 1774966976
}

状态码说明

状态码说明
200请求成功
400请求参数错误
401Token无效或已过期
403无权限访问(IP不在白名单或会员已过期)
429配额已用完(日/月/总限制)
500服务器内部错误

cURL示例

GET方式解析

Bash
curl "https://jiexi.fengye.wang/api/parse/video?token=YOUR_TOKEN&url=https://v.qq.com/x/cover/xxx.html"

PHP示例

GET方式

PHP
<?php
// 你的API Token
$token = 'YOUR_TOKEN';
$videoUrl = urlencode('https://v.qq.com/x/cover/xxx.html');

// 构建请求URL
$url = 'https://jiexi.fengye.wang/api/parse/video?token=' . $token . '&url=' . $videoUrl;

$response = file_get_contents($url);
$result = json_decode($response, true);

if ($result['status']) {
    echo "解析成功!视频地址:" . $result['data']['url'];
    echo "剩余日配额:" . $result['data']['remaining_quota']['daily'];
} else {
    echo "解析失败:" . $result['msg'];
}

Python示例

Python
import requests
import urllib.parse

token = 'YOUR_TOKEN'
video_url = 'https://v.qq.com/x/cover/xxx.html'

# 编码参数
url_encoded = urllib.parse.quote(video_url)

url = f"https://jiexi.fengye.wang/api/parse/video?token={token}&url={url_encoded}"

response = requests.get(url)
result = response.json()

if result['status']:
    print(f"解析成功!")
    print(f"视频地址:{result['data']['url']}")
    print(f"是否缓存:{result['data']['cache_hit']}")
    print(f"剩余配额:日{result['data']['remaining_quota']['daily']}")
else:
    print(f"解析失败:{result['msg']}")

JavaScript示例

JavaScript
const token = 'YOUR_TOKEN';
const videoUrl = encodeURIComponent('https://v.qq.com/x/cover/xxx.html');

const url = `https://jiexi.fengye.wang/api/parse/video?token=${token}&url=${videoUrl}`;

fetch(url)
    .then(response => response.json())
    .then(data => {
        if (data.status) {
            console.log('解析成功!');
            console.log('视频地址:', data.data.url);
            console.log('是否缓存:', data.data.cache_hit);
            console.log('剩余日配额:', data.data.remaining_quota.daily);
        } else {
            console.error('解析失败:', data.msg);
        }
    })
    .catch(error => {
        console.error('请求错误:', error);
    });