【emby折腾日记】自定义emby的下载功能
之前用emby建了个galgame库,但一直没想好怎么利用,就想着先把下载功能实现,但emby的下载功能需要会员,所以就准备自定义个下载功能。

先看看效果:

大致流程就是先请求自建的后端,后端将文件压缩,用文件流的形式传给前端实现下载功能。

前端部分
前端部分
\system\dashboard-ui\modules\itemcontextmenu.js
需要使用两个库,axios.min.js,sweetalert2.js,先把库文件放到modules下,然后引入。
注意_confirm, _axios, _sweetalert2这三个就是后引入的库

注意需要加break;直接跳出

自定义下载函数:


后端部分
后端部分

文件压缩类:


存在的问题
存在的问题
后端没有验证权限,安全性存在一定问题。
如果同时压缩和传输多个文件,会对服务器造成一定压力,因此需要限制同时压缩和传输的数量。
测试了4G左右的压缩包可以正常压缩和传输,但未测试更大的文件是否会产生未知问题。
小改动
小改动
从媒体库点近游戏库会先进入"系统",现在想直接进入文件夹。

观察发现进入文件夹是在url上加入参数&tab=folders实现的,于是通过修改进入时的默认url实现。
\system\dashboard-ui\modules\approuter.js
就是这个部分,在games的return中加入"&tab=folders";就可以了


总结
总结
虽然只是实现了一个小功能,但提供了一个思路,以后可能考虑实现更多的功能。如果有什么好的想法也可以评论区留言。想要完整代码或程序的,想知道怎么定位js和函数的也可以评论区留言。