赞片CMSAPP接口
照这篇做一遍,你能拿到一个能返回 JSON 的赞片CMS APP 接口地址,并知道怎么测、怎么接、出问题怎么查。
第一步:确认接口开关在后台哪里
这一步的目标是打开接口功能并拿到密钥。用管理员账号登录后台,地址一般是 http://你的域名/admin.php。登录后看左侧菜单,找到 系统 → 基本设置,在这个页面里找「接口设置 / APP接口 / API设置」这一块(不同版本的叫法不一样,但都在同一个设置区域)。把「开启APP接口」打开,把「接口密钥(key)」记下来,顺手把「接口域名」填成你实际要对外用的域名。
注意:改设置前先导出一次数据库。接口相关的开关一旦改了,前台 APP 会立刻受影响,出问题不好回滚。
第二步:测出接口地址,确认能返回数据
这一步要得到一个「浏览器打开就有 JSON」的地址。赞片CMS 的接口入口通常在站点根目录,先试这个:
http://你的域名/api.php?ac=list&pg=1
如果 404,换成带 m 参数的写法试:
http://你的域名/index.php?m=api&ac=list&pg=1
浏览器直接打开,看到一整屏 JSON(哪怕内容为空)就说明通了。用命令行看更清楚:
curl -s "http://你的域名/api.php?ac=list&pg=1" | head -c 500
注意:如果返回的是 HTML 页面而不是 JSON,说明这个地址被伪静态或路由拦了。去后台把接口路径加进伪静态排除规则,或者直接用 index.php 那种完整写法。
第三步:记住四组常用参数
这一步你要能自己拼出取数据的 URL。
- 列表:
ac=list&pg=1,pg 是页码,一页条数在后台接口设置里改 - 分类列表:
ac=list&t=分类ID&pg=1,分类 ID 在 视频 → 分类管理 里能看到 - 详情:
ac=detail&ids=1,2,3,ids 是视频 ID,多个用英文逗号 - 搜索:
ac=list&wd=关键词,关键词建议用 urlencode 编码后再拼
第四步:看懂返回字段
这一步决定你后面接 APP 会不会对错字段。列表返回的是视频数组,重点看 vod_id(唯一 ID,详情接口用它)、vod_name(标题)、vod_pic(封面图地址)、vod_time(更新时间)。详情接口里多出播放地址字段,格式是「集数名$播放地址」,多集之间用 # 分隔,APP 端按这两个符号切分就能生成剧集列表。
注意:
vod_pic如果返回的是相对路径(以/开头),APP 里要自己拼上域名,否则图片全裂。后台接口设置里一般有「图片地址补全域名」的选项,打开它更省事。
第五步:接到 APP 里
这一步把接口地址填进客户端。如果你用的是现成的影视 APP 源码,去它的配置项里找「接口地址 / API 域名」;如果是用赞片CMS 自带或配套的打包工具,通常在 系统 → 客户端设置 里填接口域名。填的时候只填到域名层级,不要带 /api.php,除非说明里明确要求带。
注意:接口是 http 而 APP 是 https,安卓和 iOS 都会直接拦截请求。两边协议必须一致,最稳的做法是给接口域名配好 SSL 证书。
第六步:出问题怎么查
- 返回空白:去
/runtime/log/看当天日志,多半是 PHP 报错 - 只有本机能访问:接口域名没加进 CDN 回源白名单或防火墙
- 打开慢:给视频表的分类字段和更新时间字段加索引,并开启接口缓存
- 被人抓走片库:开启密钥校验,并在 Nginx 里对接口路径做 IP 限流
注意:接口一开,等于把整站片库公开。上线前确认
app_debug是关闭状态,别让接口返回里带出后台路径和数据库信息。
小结
接口开关在后台「系统 → 基本设置」的接口设置区域;入口先试 /api.php,不通再试 /index.php?m=api;四组参数是 list、t、detail、wd;字段认准 vod_id、vod_name、vod_pic 和播放地址的 $ 与 # 分隔符;接 APP 时域名和协议要对齐;上线前关调试、加校验、做限流。
原文链接:https://www.gj0.com/thread-177.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。