自建API解決Onedrive Rclone傳輸中的降速、斷流等擁擠問題
問題描述
在上一篇博客中介紹了win10下使用Rclone將OneDrive映射到本地磁盤教程(開機自動掛載)
看效果圖
在實際使用中發現,向該onedrive磁盤上傳和下載文件時經常遇到降速、斷流的問題,導致傳輸過程要重複幾遍纔可能成功。
產生上述現象的主要原因是在配置rclone時,使用的是默認API連接onedrive,大家同時用公用API來進行傳輸,導致上傳和下載的擁擠問題,傳輸過程比較不穩定。
Microsoft App Client Id
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_id> (步驟5. 按enter鍵跳過)
Microsoft App Client Secret
Leave blank normally.
Enter a string value. Press Enter for the default ("").
client_secret> (步驟6. 按enter鍵跳過)
自建API
使用自建API連接onedrive來替代公用API,可以有效解決降速、斷流等擁擠問題。
首先進入Microsoft Azure官網,進行API註冊。
進入網站後點擊“應用註冊”(上圖中紅框圈出)。
然後點擊“新註冊”,進入註冊應用程序界面
在註冊應用程序界面
- 輸入API的名稱(可隨便取一個)
- 選擇支持賬戶類型(選第三個)
- 重定向URL,輸入
http://localhost
- 點擊“註冊按鈕”,生成該API
下圖中的應用程序(客戶端)ID,即爲client_id,將其記下來
點擊“證書和密碼”,然後再點擊“新客戶端密碼”
再按下圖進行設置,點擊“添加”後就可以得到該新建客戶端的密碼。
該密碼(下圖中紅框圈出的)即爲client_secret,將其記下來
爲該API添加所需權限。點擊“API權限”->“添加權限”->“Microsoft Graph”。
點擊“委託的權限”,爲API添加Files.Read、Files.Read.All、Files.ReadWrite、Files.ReadWrite.All、offline_access這幾個權限。
添加好權限之後,點擊“代表****授予管理員同意”,便可以完成授權
得到client_id和client_secret後,接下來對rclone conf進行修改,將API替換爲自建的API。
修改Rclone配置
打開windows powershell,按鍵盤上的win+x,然後按a鍵,即可調出windows powershell
按下面的輸入對應的代碼,可編輯client_id和client_secret
Windows PowerShell
版權所有 (C) Microsoft Corporation。保留所有權利。
嘗試新的跨平臺 PowerShell https://aka.ms/pscore6
PS C:\Windows\system32> rclone config #輸入rclone config
Current remotes:
Name Type
==== ====
onedrive onedrive
e) Edit existing remote
n) New remote
d) Delete remote
r) Rename remote
c) Copy remote
s) Set configuration password
q) Quit config
e/n/d/r/c/s/q> e #輸入e
Choose a number from below, or type in an existing value
1 > onedrive
remote> 1 #選擇之前配置好的onedrive
--------------------
省略......
Edit remote
** See help for onedrive backend at: https://rclone.org/onedrive/ **
Value "client_id" = "隱私信息*******"
Edit? (y/n)>
y) Yes
n) No (default)
y/n>y #輸入y
接下來輸入之前保存的client_id
Value "client_secret" = "S/u3rd2J_JVc-A1.y4]3?w4B_Bc-tFT["
Edit? (y/n)>
y) Yes
n) No (default)
y/n>y #輸入y
接下來輸入之前保存的client_secret
然後會跳出Microsoft Onedrive賬號登錄和API授權界面,輸入賬號和密碼登錄即可,授權界面點擊“是”。
之後的設置與我的上一篇博客相同,參見win10下使用Rclone將OneDrive映射到本地磁盤教程(開機自動掛載)
至此,API替換工作完成,可愉快的使用Onedrive磁盤傳輸文件啦~
速度飛起