这个是 【影视站程序】极低内存占用…… 的扩展模板,因坛友提出需要可以播放要先解析的链接,基于默认模板修改的。现仅需两到三步配置一下即可实现该需求:
使用方法
如果你使用的是直接返回播放器代码的解析接口,则无须反代,直接跳到第二步。
1. 设置反代
如果你想使用本模板自带的播放器,需要使用返回 JSON 数据的解析接口,以及自己使用 Nginx 或宝塔配置一个反向代理,以解决接口不支持跨域的问题。或者,如果你能联系到接口提供方,向他们建议给 HTTP 返回头增加一句 Access-Control-Allow-Origin: *
,就可以无须架设反代了。
反代的架设方法自己搜索,不在本说明范围内。
2. 下载并解压
3. 编辑模板
打开文件 tempaltes/kq/vod/play.html
,在上方你会看到如下代码:
const loadPlayer = ({ code, src, loader }) => {
if (src.endsWith('.m3u8') || src.endsWith('.mp4')) {
return loader({ src })
}
// JSON 接口反代地址,比如:https://my-vod-site.com:8080/?json_url=
const proxy = ''
const solutions = [
// ['播放编码', '解析地址', '键名或 null'],
// `播放编码`就是后台`线路设置`中的`播放编码`,只填写需要解析的线路,
// 第三个元素如果有值,则通过反代地址向解析地址发送 JSON 请求,取出返回值相应的键值,
// 如果是 null,则以 iframe 的形式载入解析地址提供的播放器。下面是例子:
// ['iqiyi', 'https://jiexi.com/?json=', 'url'],
// ['youku', 'https://jiexi.com/?player=', null],
]
代码中已经简单写了注释,我再详细说明一下:
编辑位置 1
无需反代的可跳过本步骤。
架设好反代的,定位到 const proxy = ''
,在两个单引号之间填入你架设的反代接口地址。
编辑位置 2
找到这个数组的位置:
const solutions = [
// ['播放编码', '解析地址', '键名或 null'],
// `播放编码`就是后台`线路设置`中的`播放编码`,只填写需要解析的线路,
// 第三个元素如果有值,则通过反代地址向解析地址发送 JSON 请求,取出返回值相应的键值,
// 如果是 null,则以 iframe 的形式载入解析地址提供的播放器。下面是例子:
// ['iqiyi', 'https://jiexi.com/?json=', 'url'],
// ['youku', 'https://jiexi.com/?player=', null],
]
在 solutions
中按注释的格式填入一或多个三元素数组。注意第三个元素的数据类型:键名带引号,null
不要带引号。
至此模板编辑部分已经完成。
4. 使用模板
将 templates
文件夹和可执行文件放在同一个目录中,将网站后台“站点设置”页中的“模板名称”项改为“kq”,提交。
至此全部完成,以后添加新线路时依照第三步编辑模板即可。
完结散花 
王婆:精心设计的程序架构,优雅的代码结构,仅在模板层就解决了新需求,无须改动主程序,太酷啦。