JSON API 文档
所有接口都在 http://lan.xaxanb.com/api 下,返回 JSON。
以下为匿名或登录用户可用的接口;写操作有频率限制(解析 30 per minute)。
成功返回 { ok: true, ... },失败返回 { ok: false, error, message } 并带 HTTP 状态码。
/api/parse
提交蓝奏云分享链接,生成短链。单条会同步解析后返回完整信息;多条会入库并在后台解析,返回 status=pending,稍后轮询状态接口即可。
{
"url": "https://wwbau.lanzoub.com/xxxx", // 或 urls: ["...", "..."]
"password": "b5q0" // 可选
}
curl -X POST http://lan.xaxanb.com/api/parse \
-H "Content-Type: application/json" \
-d '{"url":"https://wwbau.lanzoub.com/xxxx","password":"b5q0"}'
直链缓存时长由管理员统一设定,提交接口不接受 ttl 参数。
文件夹分享也支持:把 /b… 形式的文件夹链接连同提取码一起提交,会展开成文件清单,每个文件各生成一条自己的短链;返回项里会多一个 folders 数组(含 entries,子文件夹是 is_dir: true 的条目),每条链接会带 folder 字段。界面上按「文件管理器」展示:根目录 / 文件夹 面包屑,子文件夹可点开收起。
要取文件夹里某一层的内容(点进去):POST /api/folder,体为 {url, password, fid?},fid 传子文件夹的 file_id;已经建过短链的文件会回带 short_url。
一次最多 20 条。返回项含 share_url(本站短链,分享这个)与 direct_url(解析出来的 CDN 真实直链),以及 source_url、media_kind、size_text、seconds_left 等。
直链是会过期的临时地址,而且它返回的是「附件下载」、不能在线预览——长期分享请用 share_url。direct_url 只在 /api/parse(你自己刚提交的结果)返回;首页列表(登录后)、统计、短链 info 等接口都不带它。
/api/links?codes=a1b2,c3d4
按短码批量查询状态;加 scope=all 则按创建时间倒序列出全部短链(需登录)。
curl "http://lan.xaxanb.com/api/links?scope=all"
首页现在用的是下面的文件库接口(有文件夹层级),scope=all 保留给脚本用。
API 令牌(注册用户)
注册用户登录后可在个人中心生成 API 令牌。 脚本调用 API 时带上令牌,身份等同于登录:
curl -H "Authorization: Bearer <token>" "http://lan.xaxanb.com/api/tree"
也支持请求头 X-API-Token: <token>。
数据隔离:普通用户(含令牌)只能看到 / 统计到 自己提交的短链、文件夹与日志;管理员看全站。 令牌只显示一次,重置后旧令牌立即失效。
文件库(读)
/api/tree?folder=<id>
·
GET
/api/folders
·
GET
/api/tree/search?q=
·
GET
/api/tree/stats
读接口,登录本站账号可用(未登录访客看不到文件列表)。
/api/tree 返回某一层的面包屑(path)、子文件夹(folders)和文件(files),
folder 省略就是根目录;/api/folders 是所有文件夹的扁平列表(带层级与完整路径)。
curl "http://lan.xaxanb.com/api/tree?folder=3"
新建 / 改名 / 移动 / 删除、批量整理等写操作只有管理员能做, 接口见管理员文档,普通用户文档不展开。
蓝奏云文件夹分享会自动变成一个文件夹:提交 /b… 链接后,
文件库里会出现同名文件夹,里面的文件都挂在它下面;子文件夹也会建成目录,
点进去时才去云端拉那一层,所以提交时不会一次打一堆请求。
kind 为 lanzou、pending:true 就表示"还没同步过"。
/api/links/<code>
·
GET
/api/links/<code>/status
详情/轻量状态(轮询用,字段极少)。
详情里的访问/解析日志与趋势属于他人数据:匿名只返回基础信息,登录本站才带日志字段。
curl "http://lan.xaxanb.com/api/links/a1b2c3d4/status"
/api/links/<code>/refresh
立刻丢弃缓存直链并重新解析(失败返回 422 + 原因)。
curl -X POST "http://lan.xaxanb.com/api/links/a1b2c3d4/refresh"
/api/preview
试解析:不落库、不返回直链,只告诉你文件名 / 大小 / 真实类型,方便先确认再保存。
curl -X POST http://lan.xaxanb.com/api/preview \
-H "Content-Type: application/json" \
-d '{"url":"https://wwbau.lanzoub.com/xxxx","password":"b5q0"}'
/api/stats
·
GET
/api/flow
·
GET
/api/meta
/api/stats:匿名只返回站点聚合数字(短链数 / 有效数 / 访问总量 / 成功率等),
不含任何链接清单、热门榜、趋势明细;登录后才有完整统计。
/api/flow:匿名只返回 3D 地球的「本服务」节点位置;访问/解析事件明细(IP 段、地区、短码)
属于他人数据,登录后才返回。
/api/meta:站点运行参数(站点名 / 缓存时长 / 批量上限等),不含他人数据。
短链本体(给人访问的地址)
这几个地址浏览器直接打开即可,不需要调 API。短链本身就是内容: 能预览的类型直接内联显示,普通文件直接触发下载。
保活策略与状态码
· 直链缓存 7200 秒;剩余不足 300 秒 即触发重解析。
· 重解析失败进入 180 秒 退避。
· status 取值:ok / pending / error / disabled。
· 错误码:bad_url 链接格式错、need_password 需要提取码、wrong_password 提取码错或已失效、rate_limited 触发限流。