赞片CMSAPP对接
学完这篇,你能把赞片CMS里的影视数据接到自己的 APP 上,让 APP 正常完成分类浏览、搜索和播放三条链路。
第一步:确认版本和运行环境
这一步要确认你的 CMS 版本支持对外接口,做完之后你才知道该按哪套菜单去找配置项。赞片CMS 从 2.x 版本开始内置了对外数据接口,1.x 老版本需要额外装插件。进入后台,看右上角或「系统 → 系统信息」里显示的版本号,低于 2.0 的建议先升级。同时确认服务器环境:PHP 7.0–7.4(不要用 PHP 8,老版本接口会报语法错误)、MySQL 5.6 以上、伪静态已开启(Apache 用 .htaccess,Nginx 要在站点配置里加 rewrite 规则)。
注意:很多人对接失败不是配置问题,是 PHP 8 环境下接口文件直接 500,先在「系统信息」里把 PHP 版本降下来再看别的。
第二步:打开 CMS 的对外接口开关
这一步是把接口从「关闭」改成「开启」,并设置访问密钥,做完之后外部程序才能合法读取数据。进入后台,走这个路径:系统 → 网站参数配置 → 接口设置(部分版本叫「API 设置」或「采集与接口」)。在这个页面里做三件事:
- 把「开启数据接口」选成「是」;
- 设置「接口密钥」,填一串 16 位以上的随机字符,记下来,APP 端要填一样的;
- 填「允许访问域名」白名单,如果 APP 是直连(不是走你自己的中转服务器),这里留空表示不限制。
保存后清一次缓存:系统 → 缓存管理 → 清除全部缓存。
注意:密钥不要用 123456 这类,接口地址一旦被扫到,别人能直接扒你的数据和播放源。
第三步:拿到接口地址并自测
这一步是拿到真正的接口 URL 并在浏览器里验证,做完之后你能确定接口是通是死。接口地址默认是这两个:
- JSON 格式:
https://你的域名/api.php/provide/vod/ - XML 格式:
https://你的域名/api.php/provide/vod/at/xml/
在浏览器直接打开 JSON 那个地址,如果返回一大段以 {"code":1,"msg":"数据列表"...} 开头的内容,说明接口已经通了。如果返回 404,检查伪静态规则有没有把 /api.php 也重写了;如果返回「无权访问」,回到第二步查密钥白名单。
再看分类是否正常:加上参数 ?ac=list,即 https://你的域名/api.php/provide/vod/?ac=list,应该返回所有分类的 ID 和名称。把这些 ID 记下来,APP 端做分类页要用。
第四步:在 APP 后台填写接口配置
这一步是把接口地址填进 APP 的配置里,做完之后 APP 就能拉到数据。不同 APP 的入口不一样,常见两种:
- 自研 APP:在服务端配置文件(一般是 config/api.php 或环境变量)里填
api_url= 第三步的 JSON 地址,api_key= 第二步的密钥; - 套壳/成品 APP:进它的运营后台,找「接口配置」或「数据源设置」,把地址和密钥粘进去,点「测试连接」,显示「连接成功」再保存。
填完记得配置分类映射——把 CMS 返回的分类 ID 和 APP 首页的栏目一一对应上,尤其是「电影 / 电视剧 / 综艺 / 动漫」这四个主分类,顺序错了首页会乱。
注意:接口地址必须用 https,HTTP 地址在 iOS 上会被 ATS 策略直接拦掉,表现为「一直加载中」。
第五步:跑通播放链路并排查报错
这一步是验证从列表点到播放这一整条链路,做完之后才算真正对接完成。在 APP 里依次测:打开首页看有没有数据 → 点进详情页看剧集列表 → 点第一集看能不能播。
常见三种报错和对应处理:
- 列表为空:接口通了但没数据,去 CMS 后台确认资源是「已审核 + 已上架」状态,未审核的内容不会进接口。
- 详情页有剧集、点播放黑屏:播放地址返回的是 CMS 里的原始 m3u8 地址,APP 播放器不支持,需要在 CMS 后台「播放器设置」里换成 APP 支持的解析方式。
- 搜索点了没反应:搜索走的是
?wd=关键词参数,检查 APP 端有没有对关键词做 URL 编码,中文不编码必然搜不到。
小结
- 接口能否用,先看版本(2.x 以上)和 PHP 版本(7.x),再看接口开关和密钥;
- 接口地址固定是
/api.php/provide/vod/,自测时用?ac=list验证分类; - 分类 ID 映射和播放地址兼容,是 APP 端最容易出问题的两个点;
- 全程走 https,密钥别用弱口令。
原文链接:https://www.gj0.com/thread-136.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。