Alist-目录文件列表程序 添加账号
基本配置
所有账号的通用项
虚拟路径
必填,唯一标识符,即你要挂载到的位置,如果你要挂载到根目录,即为/
index(索引)
当有多个账号时,用于排序,越小越靠前
proxy(代理相关)
一个有三个相关选项:
- proxy:网页端和直链走不走中转
- webdav_proxy:webdav文件下载走不走中转
- webdav_direct:webdav是否直接由本机中转
如果没有proxy和webdav_proxy选项,则说明只能走中转
存储分可以直接请求(有proxy开关)和不可以直接请求的(无proxy开关)
不可以直接请求的会直接走程序所在服务器(如果你没有填down_proxy_url)
可以直接请求的:
- proxy关、webdav_proxy关:文件下载请求完全不走服务器
- proxy开、webdav_proxy关:网页上的预览、直链下载都走服务器,但webdav下载不走服务器
- proxy关、webdav_proxy开:网页上的预览、直链下载不走服务器,但webdav下载走服务器
- proxy开、webdav_proxy开:网页预览、直链下载和webdav下载都走服务器。
- webdav_direct: 如果打开此开关,则webdav文件直接由本机中转,且不经过302跳转。如果此项关闭且打开webdav_proxy,webdav客户端在get文件时可能会经过多次302跳转。因为部分客户端可能不支持302跳转get文件,所以打开此开关可能会提示部分客户端的兼容性。
down_proxy_url(下载代理地址)
不填此字段开启代理时,默认使用本机进行中转。提供两种代理方法:
cloudflare workers
可以使用cloudflare workers
进行代理,此处填写cloudflare workers
地址即可。
workers代码可以在https://github.com/alist-org/alist-proxy/blob/main/alist-proxy.js 找到。其中:
- HOST: 你的Alist地址,必须添加协议头,且后面不能添加/。如
https://alist.nn.ci
; - TOKEN:参见Alist部分的Token。
通用二进制
你也可以使用另外一台机器进行代理,在https://github.com/alist-org/alist-proxy/releases 下载程序./alist-proxy -help
查看使用方法。
你也可以自己开发代理程序,一般的步骤为: - 下载时会请求
PROXY_URL/path?sign=sign_value
- 在代理程序中验证sign,sign的计算方式为:
1
2const name = path.split('/').pop();
const sign = md5(`alist-${TOKEN}-${name}`).slice(8, 24) - 验证sign无误后,请求
HOST/api/admin/link
,可以得到文件的URL与需要携带的请求头 - 使用得到的信息请求并返回
api_proxy_url(API代理地址)
同down_proxy_url,请求API使用的代理,专门为GoogleDrive和PikPak等国内无法直接访问的存储准备。extract_folder
- front: 排序时将文件夹全部放到最前面
- back: 排序时将文件夹全部放到最后面
存储配置
本地存储
只需填写本地的要设置为根目录的路径即可。阿里云盘
由于阿里云盘referrer的限制,必须使用移动端token,使用桌面web端token会导致无法下载与预览。
refresh_token(刷新令牌)
打开https://media.cooluc.com/decode_token/
- 点击本页顶部“移动端网页登录入口”,按F12打开浏览器开发者工具,点击开发者工具“Network”栏。
- 输入阿里云盘账户信息进行登录(登录成功不会有任何提示),接着在开发人员工具找到并拷贝“login.do?appName=aliyun”链接的“response”数据。
- 在https://media.cooluc.com/decode_token/粘贴“response”数据到输入框,点击“解码Refresh Token”页面将弹出你的refresh_token。
- 解码
如果你使用这个工具获取不到token,请参考这个issue通过手机端抓包/查找日志(/data/media/0/Android/data/com.alicloud.databox/files/logs/trace/)来获取,不要给我提issue,我也没办法。排序与排序方向
自行选择,或者不选根目录file_id
打开阿里云盘官网,点进去你要设置的文件夹时url后面的一串,如https://www.aliyundrive.com/drive/folder/5fe01e1830601baf774e4827a9fb8fb2b5bf7940 就是5fe01e1830601baf774e4827a9fb8fb2b5bf7940
限制
如果你的服务器与阿里云盘的服务器通信困难,可选择填小一点,否则默认不填就好OneDrive
如果你的账号不支持API,(比如学校账号未验证管理员,或者是管理员禁用了API),那么你还可以通过webdav的方式来挂载。具体见 webdav
First
首先打开https://tool.nn.ci/onedrive/request创建应用
你也可以选择跳过此步,使用默认提供的client,但是需要组织管理员批准。
- 在打开的页面,选择所在区域,点击创建应用
- 登陆后选择「注册应用程序」,输入「名称」,选择「任何组织目录中的账户和个人」(注意这里不要看位置选择而是看文字,部分人可能是中间那个选项,不要选成单一租户或者其他选项,否则会导致登陆时出现问题),输入重定向 URL 为 https://tool.nn.ci/onedrive/callback ,「注册」即可,然后可以得到client_id
- 注册好应用程序之后,选择「证书和密码」,点击「新客户端密码」,输入一串密码,选择时间为最长的那个,点击「添加」 (注:在添加之后输入的密码之后会消失,请记录下来 client_secret 的值)
- 选择「API 权限」,点击 「MicroSoft Graph」,在「选择权限」中输入 file,勾选 「Files.read」(注:Files.read 是只读最小权限,图中权限较大,也同样可以),点击「确定」
获取刷新令牌
将上一步骤中获得的client_id和client_secret填入https://tool.nn.ci/onedrive/request 这个页面,点击获取刷新令牌,就可以得到刷新令牌了获取Sharepoint site_id
如果需要挂载Sharepoint,完成上一步后,在显示刷新令牌的界面会出现一个输入站点地址,输入站点地址后点击获取site_id即可。添加账号
将上述过程中获取得到的值依次填入即可。根目录路径
默认为/
,如果需要自定义,就填路径就行,从根路径开始,和本地路径一样,比如/test
天翼云盘
个人云
使用189Cloud或者189CloudPc均可。区别为: - 189Cloud使用web端api
- 189CloudPc使用客户端api
用户名
即用于登陆的手机号密码
即用于登陆的密码排序与排序方向
自行选择根目录ID
与阿里云盘类似,官网url最后面一串,如: - https://cloud.189.cn/web/main/file/folder/-11 ->
-11
- https://cloud.189.cn/web/main/file/folder/71398114617385472 ->
71398114617385472
家庭云
使用189CloudPc
使用电脑浏览器,打开开发者工具,切换仿真设备选择手机设备,打开https://h5.cloud.189.cn/main.html#/family ,进入你想挂载的文件夹,可在网络中看到请求,然后找到所需参数:
谷歌云盘
支持团队盘
获取client_id,client_secret,refresh_token
使用https://tool.nn.ci/google/request
根目录file_id
与阿里云盘类似,官网url最后面一串,
123云盘
https://www.123pan.com/
填写账号密码即可。
用户名
即用于登陆的手机号
密码
即用于登陆的密码
根目录file_id
与阿里云盘类似,官网url最后面一串
蓝奏云
由于每个人的链接可能不一样,所以cookie挂载也需要填写share url,随便一个分享链接就可以。
cookie
通过cookie获取账号内的文件夹,cookie有效期未知,测试一直未失效。
打开浏览器开发者工具,切至网络tab,然后登陆蓝奏云,并打开要分享的文件夹,找到最新的https://pc.woozooo.com/doupload.php请求:
就可以看到cookie和要分享的文件夹id。 不填文件夹id则默认为根目录。
share url
只填写外链分享地址与分享密码即可。 蓝奏云的分享只能分享一个文件夹内的文件,所以看不到文件夹是正常现象。
Alist
添加其他的Alist服务。
alist site url
另一个Alist的地址
Token
可以在登陆之后的请求的请求头中找到,名称为Authorization,也可以自己计算,计算方式为:
1 | md5(`https://github.com/Xhofe/alist-${YOUR_PASSWORD}`) |
还可以在登录后的localStorage中找到,名称为admin-token。
根目录路径
要添加的目录的pathname,不填默认为根目录,如:
- https://alist.nn.ci ->
/
- https://alist.nn.ci/a ->
/a
- https://alist.nn.ci/a/b ->
/a/b
FTP
ftp host url
FTP地址用户名
FTP用户名密码
FTP密码根目录路径
不填默认为 ‘/‘AWS S3
S3对象存储协议,如COS、OSS、B2等。BucKet
存储桶名称Endpoint
Endpoint地址Region
地区Access Key
密钥IDAccess Secret
访问密钥root folder path
根路径,不填默认为根目录。Custom Host
自定义cdn加速域名url expire time
签名的下载地址有效期,默认为4小时,如果使用自定义加速域名则此项无效。WebDav
webdav root url
WebDAV根地址用户名
用户名密码
密码OneDrive/SharePoint
选择vendor为sharepoint,支持国际版/世纪互联。
对于OneDrive/SharePoint,你可以通过这个工具获取webdav根地址,如果要挂载指定的目录,在后面拼接即可。
用户名为OneDrive账号邮箱,密码即为OneDrive账号密码。Teambition
Teambition项目文件,支持中国服务器和国际服务器。Cookie
登陆之后获取,有效期未知Project ID 和 root folder id
登陆后从URL中获取分秒帧
Token
有效期仅七天,登陆后获取root folder id
登陆后从请求中获取和彩云
所有信息都从请求中获取
对于个人云:
对于家庭云:
注:家庭云不支持重命名、移动、复制和上传。Yandex.Disk
刷新令牌
点此获取刷新令牌。根目录路径
要挂载的根目录,默认为/
百度网盘
由于百度网盘API的限制,下载较大的文件(目测>20M)需要携带header:”User-Agent”:”pan.baidu.com”,所以在下载大于20M的文件时,需要自行设置请求头,如使用curl:
curl -L -X GET ‘YOUR_LINK’ -H ‘User-Agent: pan.baidu.com’
或使用本程序中的代理功能进行中转。刷新令牌
点此获取刷新令牌。根目录路径
要挂载的根目录,默认为/Download api
- official: 官方接口,非常稳定,但是对于较大文件需要修改UA且速度慢
- crack:非官方接口,无需修改UA且部分文件可能不限速,但是可能会不稳定
夸克网盘
Cookie和根目录ID从请求中获取:由于夸克网盘的限制,下载必须携带cookie,所以只能使用本程序中的代理功能进行中转。(可以使用其他机器中转)
或者根目录id也可以从地址栏获取:迅雷网盘
填写账号密码即可。根目录ID:
不填默认为根目录SFTP
即通过ssh协议来访问文件。ip/host
主机地址port
ssh端口,一般默认为22用户名
ssh用户名,一般为root密码
ssh密码根路径
要挂载的根路径