本站资源均来自网络,如有违规请联系[email protected]删除违规资源。
你有没有遇到过这种情况:朋友发来一段抖音分享文案,你只想拿视频直链或图集,结果链接像套娃,一层短链一层跳转,最后只剩一句“请在 App 内打开”。
所以我做了这个小工具:部署在 Cloudflare Workers,输入一个 url 参数(支持整段分享文案),返回统一 JSON 数据。
这个版本有一个明确原则:不走第三方兜底接口,只保留最原始解析逻辑。能解析就解析,不能解析就清晰报错。
—————————————-
一、它具体做了什么
1)接收用户传入 url
2)从文本里提取第一个 http/https 链接
3)跟随短链跳转,归一到抖音网页域名
4)提取 aweme_id
5)获取 ttwid
6)生成 a_bogus
7)请求 aweme/detail
8)输出统一结构:code / msg / data
一句话总结:把“分享链接”还原成“程序能直接消费的数据”。
—————————————-
二、为什么选 Cloudflare Workers
1)不用自己养服务器,部署快
2)边缘节点运行,响应更稳
3)单文件 workers.js,维护成本低
4)非常适合轻量 API 场景
它不像一台重型机器,更像一把趁手的扳手:小、快、好用。
—————————————-
三、接口怎么调用(可直接复制)
示例 1:GET 请求
curl “<WORKER_URL>?url=https%3A%2F%2Fv.douyin.com%2Fxxxxxx%2F”
示例 2:POST JSON
curl -X POST “<WORKER_URL>” -H “Content-Type: application/json” -d “{\”url\”:\”https://v.douyin.com/xxxxxx/\”}”
示例 3:POST 表单
curl -X POST “<WORKER_URL>” -H “Content-Type: application/x-www-form-urlencoded” –data-urlencode “url=https://v.douyin.com/xxxxxx/”
示例 4:POST 纯文本(分享文案)
curl -X POST “<WORKER_URL>” -H “Content-Type: text/plain; charset=utf-8” –data “复制此链接,打开抖音查看: https://v.douyin.com/xxxxxx/”
—————————————-
四、返回格式
统一返回 JSON:
{
“code”: 200,
“msg”: “解析成功”,
“data”: {}
}
常见状态码说明:
200:成功
400:参数错误或链接无效
404:解析后未找到有效内容
500:请求失败、签名失败、风控拦截等
常见 data 字段:
type(video/image/live)、title、desc、author、cover、music、duration、url、video_backup、images、live_photo、video_id
—————————————-
五、为什么这版“故意不兜底”
不少解析服务会在失败后请求第三方镜像接口,短期看成功率高,但长期会有问题:
1)依赖外部服务,不可控
2)链路变长,排障困难
3)开源时可解释性变差
所以这版选择“纯主链路”:逻辑透明、边界清楚、行为可解释。
—————————————-
六、结尾
这不是一把“万能钥匙”,而是一把“专业螺丝刀”:
小而专,失败可解释,适合开源,适合持续维护。
如果你也在做内容解析工具,这个 Workers 思路可以直接拿去改造。
祝你上线顺利,截图时永远都是 200。
—————————————-
开源地址:
© 版权声明
THE END













请登录后查看评论内容