在我們的數據庫中,我們有一大堆來自過去幾年的身份驗證帳戶,其中有些早期被授予「完全訪問」權限,後來更改爲僅使用「應用程序文件夾」。知道access_token是用於應用程序文件夾還是完全訪問?
有什麼方法可以使用API來知道我們的access_token是在應用程序文件夾還是在整個帳戶中?
我們基本上想要將所有賬戶切換到應用程序文件夾,但只想改變那些需要它的人。我們必須移動文件夾,並在數據庫中存儲默認路徑。
查看完整的文檔後,我看不到任何提供這些信息,任何想法的東西?
在我們的數據庫中,我們有一大堆來自過去幾年的身份驗證帳戶,其中有些早期被授予「完全訪問」權限,後來更改爲僅使用「應用程序文件夾」。知道access_token是用於應用程序文件夾還是完全訪問?
有什麼方法可以使用API來知道我們的access_token是在應用程序文件夾還是在整個帳戶中?
我們基本上想要將所有賬戶切換到應用程序文件夾,但只想改變那些需要它的人。我們必須移動文件夾,並在數據庫中存儲默認路徑。
查看完整的文檔後,我看不到任何提供這些信息,任何想法的東西?
Dropbox API的設計使得權限級別(例如,應用程序文件夾vs完整的Dropbox)對應用程序是透明的,所以沒有一個好的/官方的編程方法來檢測任何給定訪問令牌的權限。不過,我們會考慮這個功能請求。
也就是說,API的某些功能只能用於完整的Dropbox應用程序,因此您可以使用這些功能來隱式檢測權限。例如,/2/sharing/list_folders端點僅適用於完整的Dropbox應用程序:
應用程序必須具有完整的Dropbox訪問權才能使用此端點。
這可能會爲你工作,但它仍然不是一個很好的解決方案,因爲在一個應用程序文件夾的應用程序的情況下,你會得到一個400錯誤使用純文本體(而不是一個很好的結構化409錯誤),因此您無法可靠地分辨出該錯誤與其他400錯誤之間的差異。要解決,你可以匹配對錯誤消息,但可能會改變當然是:在調用API函數「共享/ list_folders」
錯誤:您的API應用程序是一個「應用程序文件夾」的應用程序。不允許訪問此API函數。
感謝@Greg指引我在正確的方向。
因爲/sharing/list_folders
不會返回任何錯誤我無法區分完整Dropbox &應用程序文件夾訪問之間的區別。
以供將來參考,來解決我查詢我做了以下內容:
/sharing/get_folder_metadata
與由shared_folder_id
invalid_id
),則具有的access_token全Dropbox的訪問
[供參考的交叉鏈接:https://www.dropboxforum.com/t5/API-support/Know-if-access-token-is-for-an-App- Folder-or-Full-Access/mp/190351] – Greg