2015-02-10 46 views
0

對於dropbox,我們使用一個「應用程序文件夾」來爲我們的應用程序放置文檔。通過身份驗證時,我們只會看到該文件夾​​的文件。 Box.net有什麼等價物?Box.net的應用程序文件夾

看看(Java)API,似乎唯一的選擇是查看其驅動器上的所有文件。

+0

FWIW,我們只從這個文件夾讀取。 – Joel 2015-02-10 22:21:09

回答

2

查看Provision Grant workflow。給定一個電子郵件地址Box會將一個沙盒應用程序文件夾添加到用戶的帳戶,並根據需要創建該帳戶。

+0

看起來很近。我實際上並不想爲用戶創建一個新的Box.net帳戶。有沒有一個Web流程來獲得這個權限/文件夾的創建? – Joel 2015-02-10 22:16:10

+0

這是否意味着java api .getRootFolder會返回相應的文件夾? – Joel 2015-02-10 22:29:09

+0

「通過身份驗證後,我們只能看到該文件夾​​的文件。」如果您不希望用戶擁有帳戶,那麼您建議該文件夾應該放在哪裏? – 2015-02-10 23:43:40

0

John的回答是正確的,Provision Grant是這樣做的方法。至於Java SDK,它不幸地不支持配置授權工作流程(這是我們希望添加的功能)。

但是,如果您能夠手動進行配置認證,則可以將訪問/刷新令牌交給SDK,然後正常使用它。

BoxAPIConnection api = new BoxAPIConnection("clientID", "clientSecret", 
    "accessToken", "refreshToken"); 

// You can also set the expiration time if you want the SDK to auto- 
// refresh your access token for you. 
api.setExpires(expires); 

// Your application's folder will be returned after you authenticate 
// with provision grant. 
String appFolderID = "id"; 

BoxFolder appFolder = new BoxFolder(api, appFolderID); 
for (BoxItem.Info itemInfo : appFolder) { 
    // Do something with the items in your app's folder. 
} 

道歉,這不是很直觀。我創建了an issue,爲SDK添加了更好的撥款支持。

+0

所以我在想以下,讓我知道這是否合理。 1)將用戶轉發到Box的授權頁面。這是爲了確保他們正在選擇他們已經創建的適當的Box帳戶。這應該讓我們訪問他們的整個賬戶(?)和電子郵件? 2)我們在步驟1中稱電子郵件的撥款條款,然後拋棄原始的 標記,並使用撥款標記令牌。這將使我們只能訪問其賬戶中的一個文件夾,他們會讓我們映射到他們期望的賬戶(不是一些新的錯誤輸入的電子郵件地址賬戶)。 這個工作是否適當? – Joel 2015-02-11 18:20:17

+0

我做了類似上面的事情。聽到事件時奇怪的是,它會在授予的應用文件夾之外發送事件。另外,我無法弄清楚如何爲所有用戶授予的應用程序文件夾獲取事件(您似乎無法在Java中以應用程序身份進行身份驗證)。 – Joel 2015-02-11 23:41:00

+0

您不應該讓用戶登錄到他們的Box帳戶。如果您爲應用程序啓用了撥款授權,那麼您應該可以通過向用戶發送電子郵件來提供文件夾(不應要求輸入密碼)。您獲取的訪問令牌將限制您僅訪問該設置的文件夾。 Java SDK不支持配置授權,因此您需要自己執行授權流程。但是,一旦您手動進行了身份驗證,就可以將令牌給予SDK,以便它可以爲您處理令牌刷新,速率限制,JSON解析和其他操作。 – Greg 2015-02-12 00:02:49

相關問題