搭建分享型網盤
准備:
- 域名一個
- onedrive網盤一個,而且網盤必須有管理員,能用api功能,淘寶或者谷歌能找到很多小商店有賣,穩定性懂得都懂
配置onedrive
-
配置應用
-
進入Azure Activate Directory
登錄Microsoft Azure
-
點擊左測應用注冊,添加注冊
-
注冊完成之后添加秘鑰
-
添加權限
-
-
進入這個網址
-
填上azure_client_id,點authorize
-
登錄,得到code,然后點關閉
-
往下拉會發現code已經填上了,我們再把secret填上,點get token
-
沒有錯誤的話返回應該是這樣,把refresh_token記下
-
登錄onedrive,根目錄下創建一個Public文件夾用於分享
至此,我們手上就有
refresh_token
client_id
client_secret
redirect_uri
:默認為https://heymind.github.io/tools/microsoft-graph-api-auth
;base
:默認為/Public
。
這幾樣東西
-
配置cloudflare
注意這里使用github action部署,如果用本地部署的方式,請參考官方文檔
-
登錄cloudflare官網,注冊登錄,然后綁定域名,這里略過
-
綁定域名后,進入域名,往下滑動會看見自己的account_id和zone_id
-
創建worker
進入workers界面,點擊管理workers(第一次進入好像要選plan,選免費的就好了)
創建一個默認的就行,點進去這個鏈接,會得到一個hello world空白頁面
-
創建兩個命名空間
名字隨意,把id記住,記做bucket_preview_id,bucket_id
-
點進去
配置好環境變量,下面的命名空間下一步在創建
-
創建一個令牌,不多廢話了,把令牌的值記下
配置倉庫和cloudflare
- 導入項目
-
進入參考2,點擊右上角的+
old repository的url必須填原始倉庫的url,后面自己的倉庫名隨便起,權限必須是私有,不然會被別人搞到數據..
-
進入自己導入的這個庫
-
修改wrangler.toml,前兩個是域名下面有的,前面說了,后兩個就是bucket對應的那倆id,第一行的name就是默認的worker第一個.前面的部分,你的worker對應的域名應該是這個格式的
.<worker_subdomain>.workers.dev -
修改src/config/default.js
- client_id
- refresh_token
- client_secret
- base 如果之前創建了Public這里就不用改
-
點setting,添加CF_API_TOKEN ,值就是cloudflare令牌的值
-
進如actions看看最新的workflow有沒有成功
-
如果成功了,就看看前面的worker給的網址,基本上就是下面的樣子了(我這是暗黑模式)
-
如果沒有成功,看看是不是publish出錯了,如果各種id什么的都沒有填錯,就提示
可以嘗試把wrangler-action版本改為1.3
然后commit,應該就沒問題了
成品如下圖
-