一个可以绑定多个OneDrive网盘的极简目录列表:OneList[精品源码]

一个可以绑定多个OneDrive网盘的极简目录列表:OneList

一个可以绑定多个OneDrive网盘的极简目录列表:OneList[精品源码]

说明:OneList以前介绍过,主要的特色就是解决了因OneDrive API抽风导致的很多问题,稳定性和访问速度都是不错的。不过由于使用Python写的,而Py单线程容易阻塞,响应不够迅速,刷新缓存时,Web端请求基本不可用,所以在整体性能上有点瑕疵。基于Golang的性能更好,效率更高,多盘并发缓存等众多好处,于是萌咖大佬就弃用Python版本,使用Golang重写了OneList,同时支持国际版、个人免费版(家庭版)、中国版(世纪互联)及多网盘绑定。

截图

一个可以绑定多个OneDrive网盘的极简目录列表:OneList[精品源码]-度崩网-几度崩溃

更新

  1. 【2019.12.29】
  2. 新增隐藏目录或者文件。直接跳过缓存,减少API调用。
  3. 新增目录加密,支持不同目录不同账户密码。HTTP 401认证。
  4. 【2019.12.28】
  5. 新增搜索功能。

功能

  • 支持国际版、个人免费版(家庭版)、中国版(世纪互联)。
  • 支持同时列出多个盘的目录。(要求每个盘的SubPath唯一)
  • 支持文件夹内超过200个项目。
  • 支持后台自动刷新缓存。
  • 支持路径中含有特殊字符。
  • 数据储存在内存中,响应更加迅速。

安装

Github地址:https://github.com/MoeClub/OneList/tree/master/Rewrite

1、授权认证
点击右侧URL登录并授权,授权【国际版、个人版(家庭版)】、【中国版(世纪互联)】。

授权后会获取一个localhost开头打不开的链接,这里复制好整个链接地址,包括localhost

2、安装OneList

  1. #新建并进入OneList目录
  2. mkdir /opt/OneList && cd $_
  3. #64位系统下载
  4. wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/amd64/linux/OneList
  5. #32位系统下载
  6. wget https://raw.githubusercontent.com/MoeClub/OneList//master/Rewrite/i386/linux/OneList
  7. #arm架构下载
  8. wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/arm/linux/OneList
  9. #给予权限
  10. chmod +x OneList

3、使用命令

  1. Usage of OneList:
  2. -a string
  3. // 初始化配置文件,添加新配置
  4. Setup and Init auth.json.
  5. -bind string
  6. // 绑定IP地址(公网: 0.0.0.0)
  7. Bind Address (default "127.0.0.1")
  8. -port string
  9. // 绑定端口(HTTP:80)
  10. Port (default "5288")
  11. -s string
  12. // 设置 SubPath 项, 需要与 -a 一起使用.
  13. Set SubPath. [unique per account] (default "/")
  14. -c string
  15. // 配置文件
  16. Config file. (default "config.json")
  17. -t string
  18. // Index.html 目录样式文件
  19. Index file. (default "index.html")
  20. -cn
  21. // 开关
  22. // 授权中国版(世纪互联), 需要此参数.
  23. OneDrive by 21Vianet.
  24. -ms
  25. // 开关
  26. // 授权个人版(家庭版), 需要此参数.
  27. OneDrive by Microsoft.

4、生成配置文件

  1. #国际版,将url换成你上面复制的授权地址,包括http://loaclhost。
  2. ./OneList -a "url" -s "/onedrive01"
  3. #个人版(家庭版),将url换成你上面复制的授权地址,包括http://loaclhost。
  4. ./OneList -ms -a "url" -s "/onedrive02"
  5. #中国版(世纪互联),将url换成你上面复制的授权地址,包括http://loaclhost。
  6. ./OneList -cn -a "url" -s "/onedrive03"

提示Success! Add config. '/path/to/config.json'信息,则添加成功。

这里要注意的是:

  1. 1、授权url地址只能用一次,超过需要重新授权。
  2. 2、命令中的/onedrive01参数为指定网盘地址后缀,比如http://domain.com/onedrive01。
  3. 3、授权多个网盘的话,重复授权多次即可,参数均会添加到一个配置文件,且后缀不能重复。
  4. 4、地址后缀填错了的,可以稍后在配置文件中修改。

本文默认的配置文件路径/opt/OneList/config.json,参数详解,可自行修改:

  1. [
  2. {
  3. // 如果是家庭版或者个人免费版, 此项应为 true.
  4. "MSAccount": false,
  5. // 如果是中国版(世纪互联), 此项应为 true.
  6. "MainLand": false,
  7. // 授权令牌
  8. "RefreshToken": "1234564567890ABCDEF",
  9. // 单配置文件中,此项要唯一.将此OneDrive中设置为`RootPath`目录映射在`http://127.0.0.1:5288/onedrive` 下.
  10. // (只推荐一个盘位的时候使用根目录"/".)
  11. "SubPath": "/onedrive",
  12. // 读取OneDrive的某个目录作为根目录. (支持根目录"/")
  13. "RootPath": "/Test",
  14. // 隐藏OneDrive目录中的文件夹和文件, 条目间使用 "|" 分割. (跳过缓存设置的条目.)
  15. "HidePath": "/Test/Obj01|/Test/Obj02",
  16. // 使用用户名和密码加密OneDrive目录. 目录和用户名密码间使用 "?" 分割, 用户名密码使用 ":" 分割, 条目间使用 "|" 分割. 无效条目将跳过.
  17. "AuthPath": "/Test/Auth01?user01:pwd01|/Test/Auth02?user02:pwd02",
  18. // 缓存刷新间隔.(所有项目中的刷新时间取最小值为有效刷新间隔)
  19. "RefreshInterval": 900
  20. }
  21. ]

这里注意,挂载多个盘符的时候,SubPath参数请不要为/,单个网盘建议为/

5、运行OneList

  1. #下载index.html,与config.json同目录,即本文默认的/opt/OneList
  2. wget https://raw.githubusercontent.com/MoeClub/OneList/master/Rewrite/index.html -P /opt/OneList
  3. #监听8000地址,自行修改
  4. /opt/OneList/OneList -bind 0.0.0.0 -port 8000

最后打开ip:端口访问即可,如果你挂载网盘的时候SubPath/,那么直接通过根目录查看,如果为/onedrive1,那么通过ip:端口/onedrive1查看,如果该路径不存在,则会提示No Found.

且首次运行会异步缓存,也就是至少有一个盘缓存成功了,才会显示。

6、开机自启
这里新建一个简单的systemd配置文件,适用CentOS 7Debian 8+Ubuntu 16+

使用命令:

  1. #设置你的运行监听端口,即你可以通过ip:端口访问程序,这里默认8000。
  2. port="8000"
  3. #将以下代码一起复制到SSH运行
  4. cat > /etc/systemd/system/onelist.service <<EOF
  5. [Unit]
  6. Description=onelist
  7. After=network.target
  8. [Service]
  9. Type=simple
  10. ExecStart=/opt/OneList/OneList -bind 0.0.0.0 -port ${port}
  11. Restart=on-failure
  12. [Install]
  13. WantedBy=multi-user.target
  14. EOF
  15. #启动并设置开机自启
  16. systemctl start onelist
  17. systemctl enable onelist

卸载

  1. #未设置开机自启
  2. rm -rf /opt/OneList
  3. #设置过开机自启
  4. systemctl stop onelist
  5. systemctl disable onelist
  6. rm -rf /opt/OneList /etc/systemd/system/onelist.service

最后如果我们只想显示网盘的某些文件夹,那么可以分别挂载该网盘的不同目录即可,具体操作看配置文件说明。

如果有发现该程序存在BUG,可以提下,方便修复,有会前端的热心大佬,也可以自荐下,帮忙美化下该前端。

精品源码

BYR-Navi:一个开源、美观且可以部署在GitHub Pages的网站导航程序[精品源码]

2020-1-2 14:48:38

精品源码

Shiori:一个简单、美观且带Web界面的书签管理器[精品源码]

2020-1-2 14:52:43

本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策。若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
⚠️
本站所发布的一切源码、模板、应用等文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权。本站内容适用于DMCA政策
若您的权利被侵害,请与我们联系处理,站长 QQ: 84087680 或 点击右侧 私信:盾给网 反馈,我们将尽快处理。
0 条回复 A文章作者 M管理员
欢迎您,新朋友,感谢参与互动!
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
私信列表
搜索