利用Cloudflare解决Google Drive被墙后下载问题

我要说说

其实不是我弄个标题党,这篇文章就是一种思路而已,就是利用goindex部署。是看到网上有人利用套cloudflare访问Google Drive的一个源码。cloudflare+Google Drive+goindex实现免FQ列出GD文件。
实际上用处也是有的,不过由于限制比较多,并且cloudflare也不可能让你那样玩,只能说临时用下,或者玩玩可以,其他嘛就免了吧,速度也比较差,耐心好的小伙伴可以用,由于非常简单,所以并不需要动手能力很强就可以上车。另外google被Q,onedrive被和谐是迟早的事情,当然了用一天是一天。

项目简介

GoIndex是一款基于Cloudflare WorkersGoogle Drive 的功能,你可以部署你的代码在Cloudflare Workers,实现以目录形式展示google drive中的文件。

《利用Cloudflare解决Google Drive被墙后下载问题》

原理是利用Cloudflare Workers允许编写可在Cloudflare的150多个全球数据中心中运行的JavaScript。之后调用CF的cdn实现翻越,可以访问google drive。

项目地址:https://github.com/donwa/goindex

演示地址

material:
https://index.gd.workers.dev/
classic:
https://indexc.gd.workers.dev/

上面都是官方演示,我本人的演示在这里

https://gd.freedown.shop/

《利用Cloudflare解决Google Drive被墙后下载问题》

注意事项

优点:

不用FQ梯子就可以访问谷歌网盘文件;
博客等网站可直接调用网盘图片、音频、视频文件,相当于网盘直链;
完全免费,所有人都可以用。不用服务器(部署在CloudFlare Workers)也不用域名(由CloudFlare提供二三级域名)即可使用;
可以将 Google Drive 文件以目录形式(类似OneIndex部署OneDrive网盘)列出,可直链调用下载;
流量走 CloudFlare ,网速由 CloudFlare 决定;
Google Drive无限云盘得以运用;
部署非常简单;

缺点:

上传文件及访问编辑依然需要FQ,如果不是分享的话,我感觉自己用就是多此一举。
CloudFlare Workers 一天10万请求限制,这个可以在 CloudFlare Workers 界面查看
Google Drive 下载10T/24h,我感觉这个流量是没有问题的,但是10万次get你能用掉1T都很难。
Google API 调用限制,具体多少我不晓得,但是从2012年GD就开放了web的API,我感觉这个靠谱。
CF和GD的稳定性未知,特别是CloudFlare被这样玩,会不会玩坏了。

前提条件

  • CloudFlare帐号
    申请免费,大部分服务都是免费用,不会的可以百度,教程非常多,申请也非常简单。
    申请地址:https://dash.cloudflare.com/sign-up
  • Google Drive帐号
    这个前提是你得有一个google帐号,国内手机是可以申请的,gmail绑定到QQ邮箱也是无障碍收邮件,下面地址可以点开,但是申请依然需要FQ。另外找个国外edu邮箱是可以免费申请到无限空间的,当然个人也支持,就是空间大小少了点,不建议使用个人帐号部署,基本失去了意义。
    申请地址:http://www.google.cn/intl/zh_cn/drive/
  • 域名(非必须,但是强烈建议有)
    申请地址:https://www.freenom.com/zh/index.html?lang=zh
    记得申请完成之后,立刻套上CloudFlare。为什么强烈建议有,因为那些二级域名很有可能被和谐,并且不好看。
  • 因为需要访问google的API,所以你懂的,还需要准备个梯子。
  • 以上全部准备好之后就可以开搞了。

部署方法

方法1,这个有点费事,需要安装rclone,因为我是win7不能安装Rclone就不演示了。Rclone必须是win7sp1以上才可以安装。

1.安装rclone软件在本地
追踪国际https://rclone.org/drive/绑定驱动
3.Execute命令rclone config file来查找文件rclone.conf路径
4.Open rclone.conf,找到配置root_folder_id和refresh_token
在5.Download index.js https://开头github.com/donwa/goindex并填写root和refresh_token 
6.将代码部署到Cloudflare Workers

方法2,这个异常简单。

  • 打开https://installen.gd.workers.dev/

    点击获取认证代码,之后登录google帐号,将得到的API填入到认证(指纹)

    《利用Cloudflare解决Google Drive被墙后下载问题》《利用Cloudflare解决Google Drive被墙后下载问题》

    填写之后设置目录及目录密码,非必须,看个人选择,强烈建议个人及共享放到一个帐号的小伙伴,必须设置下目录和密码,否则会导致隐私泄露,不过话又说回来了,尽量不要把隐私文件放入免费帐号。

  • 点击build,中文就是建造,下面会生成一段代码,将代码复制保存,准备到CloudFlare的workers里面部署《利用Cloudflare解决Google Drive被墙后下载问题》
  • 部署CloudFlare中的workers

    登录

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

    选择域名,可能没有域名的界面和无的不一样,自己找找。

    《利用Cloudflare解决Google Drive被墙后下载问题》

    点击workers

    《利用Cloudflare解决Google Drive被墙后下载问题》

    申请,点击蓝色的那个按钮

    《利用Cloudflare解决Google Drive被墙后下载问题》

    选择域名

    《利用Cloudflare解决Google Drive被墙后下载问题》

    继续确认后选择免费套餐

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

    返回上级点击蓝色按钮开始部署代码,将一开始保存的代码粘贴到这里,可以预览Preview一下,没问题保存,到此阶段基本部署完毕。

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

    《利用Cloudflare解决Google Drive被墙后下载问题》

域名绑定

回到上级界面,点击add route,添加你的域名,这里需要注意的是,需要在域名后面加上*,如下图,同时把给系统给你的worker选择一下。保存save

《利用Cloudflare解决Google Drive被墙后下载问题》

《利用Cloudflare解决Google Drive被墙后下载问题》

回到CloudFlare主界面,点击DNS,选择域名Cname到系统给你分配的三级域名即可。

  1. 悦清风说道:

    能看到根目录下的文件,也能下载,但是点击二级目录的时候就会提示:
    {
    "error": {
    "errors": [
    {
    "domain": "global",
    "reason": "fileNotDownloadable",
    "message": "Only files with binary content can be downloaded. Use Export with Google Docs files.",
    "locationType": "parameter",
    "location": "alt"
    }
    ],
    "code": 403,
    "message": "Only files with binary content can be downloaded. Use Export with Google Docs files."
    }
    }
    百思不得其姐啊

    1. 山涧小石说道:

      经过测试,没有问题。强烈怀疑你的文件没有同步好。

      1. 悦清风说道:

        :biggrin: :biggrin: :biggrin:
        我发现 如果点击快捷方式就会出现这种情况。 问题解决了!

        1. 山涧小石说道:

          。。。。

          1. 悦清风说道:

            老哥 能不能改改代码 直接看快捷方式

            1. 山涧小石说道:

              兄弟我可是一点编程都不会啊,还有超级链接涉及权限问题,估计只能找google商量了

  2. David说道:

    能下载整个文件夹或批量下载吗?

    1. 山涧小石说道:

      goindex是有脚本批量下载文件夹的,你可以在GitHub里面找下,至于压缩包是不可能的,毕竟有200多个G,没有什么服务器是支持这么大的文件的。要不等我百度云把

      1. David说道:

        我不是这个意思!!我的意思是goindex能不能添加下载文件夹或者批量下载的按钮,或者复制全部链接!!不是要下载您的文件!!

        1. 山涧小石说道:

          。。。。这个我真的不会

          1. David说道:

            额,好吧!!还是谢谢呢!

  3. 小宇说道:

    默认密码是啥?

    1. 山涧小石说道:

      你说的是程序密码还是目录密码?
      目录密码你没修改的话,是index

  4. Mino说道:

    你最后两张图的马赛克白打了。

    1. 山涧小石说道:

      哈哈,无所谓了

发表回复