menu LittleJake's Blog
color_lens
avatar
Jake Liu
Never Settle
creative commons by-nc-sa
hit
Category
keyboard_arrow_down

© 2024 LittleJake's Blog.

萌ICP备20223020号

国内rclone挂载谷歌网盘的一种思路(不提供解决方案)

免责声明

进行任何行为均需要遵守当地法律法规,本文仅针对技术进行研究,不涉及也不提供任何非法信道的建设。
《中华人民共和国计算机信息网络国际联网管理暂行规定》(“联网规定”)第四和第十条: “擅自建立、使用非法定信通道进行国际联网。”

前言

rclone是一个开源网盘工具,本质上是通过调用对应服务提供商的API URL进行文件操作,软件模拟文件系统层。

那么,按照这种思路,我们可以更改API的URL从而达到不通过非法的代理软件访问到对应的服务API。进而,能够在国内挂载谷歌网盘。

同理,我们还可以用于微软sharepoint的挂载。

解决思路

修改源代码,并自行编译rclone。由于rclone是由go语言编写的,编译简单方便,源代码易读。

内部api和oauth服务器涉及的域名:

https://www.googleapis.com/
https://accounts.google.com/
  1. 谷歌网盘对应go文件为drive.go,由于需要OAuth授权,可以选择headless方式获得token。
  2. 之后,rclone会通过token访问TokenURL获得一个access_token,这一步需要把TokenURL指向修改。
  3. 获取到access_token以后,rclone会通过调用Google的网盘api包,客户端连接BaseURL进行对应文件操作,在这里需要重新指向baseurl(注意谷歌网盘的包有原版和v2版本,需要对应设置)。
  4. 后期rclone的所有操作都是通过拼接baseurl来进行,因此一切就绪。

处理源代码

增加谷歌网盘高级配置中baseurl的设置,以及独立的oauth服务器设置。

修改后源码编译后即可使用,如何编译自行摸索。

相关配置部分在高级设置内。

参考代码

LittleJake/rclone

测试

挂载
上传

多提一句

在网络不佳的区域打开多线程多连接需要加上运行参数:--disable-http2 --transfers 连接数,注意是多线程多连接,程序默认执行为多线程单连接。

Buy me a beer
Jake Liu
Never Settle

Title: 国内rclone挂载谷歌网盘的一种思路(不提供解决方案)

Author: Jake Liu

Origin:

Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) For any re-post you must give appropriate credit.

文章遵循CC许可 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 转载请注明出处

Tag:google, rclone, drive, 网盘, 挂载, 微软, sharepoint

评论区

Add a new comment.

Theme