0

如何從我創建的Autodesk A360存儲桶下載文件?該文件是一個Revit項目文件,我使用雙腿OAuth進行授權。從a360鍛造桶下載revit文件

+0

噢,如果可能,我需要在一個winform中做這個! –

+0

並且我提到了C#會不錯,我剛剛在另一個夜晚發現了關於json的問題,那個沒有面具的人,現在我想知道這對於從僞造雲中處理我的項目是否是必不可少的? –

回答

1

您需要使用三方認證才能訪問A360中的文件,因爲您需要獲得您正在訪問的帳戶的用戶的批准 - 用戶是第三方。 如果您嘗試從OSS上的應用程序私有存儲區訪問文件,則不需要用戶的批准,因爲存儲區屬於您的應用程序,而不屬於用戶。

作爲一個方面說明,如果嘗試使用Data Management API訪問BIM 360文件(萬一這就是你所說的),那麼暫時你需要使用2段認證,但是你的應用需要由我們手動批准。

2條腿比3條腿的認證是由奧古斯托的網絡直播覆蓋: Introduction to oAuth and Data Management API

+0

也許他正在使用兩腳OSS桶API和名稱混淆... –

+0

嗨菲利普,我用這裏tuturial上傳到....? http://the360view.typepad.com/blog/2015/02/autodesk-view-and-data-api-intro-overview.html –

+0

我的桶和他們的內容是我現在還不完全確定。我認爲這是一個接受我上傳的360。上面的鏈接到oauth 2,並創建一個桶並上傳教程。我只是最初想要存儲文件進行協作和通過winform上傳/下載.net –

0

我沒有得到一個桶關鍵嘗試創建時,我改變V1到V2桶後...

見下文

公共靜態字符串GetBucket(字符串的accessToken,串bucketKey,串政策) {

 // (1) Build request 
     var client = new RestClient(); 
     client.BaseUrl = new System.Uri(baseApiUrl); 

     // Set resource/end point 
     var request = new RestRequest(); 
     request.Resource = "oss/v1/buckets"; 
     request.Method = Method.GET; 


     // Add headers 
     request.AddHeader("Authorization", "Bearer " + accessToken); 
     request.AddHeader("Content-Type", "application/json"); // MH: skipping this works. 

     // Add JSON body. in simplest form. 
     request.AddJsonBody(new { bucketKey = bucketKey, policy = policy }); 


     // (2) Execute request and get response 
     IRestResponse response = client.Execute(request); 
     //TaskDialog.Show("create bucket", response.StatusDescription); 

     // Save response. This is to see the response for our learning. 
     m_lastResponse = response; 

     TaskDialog.Show("response", m_lastResponse.ToString()); 

     // Get the key = bucket name 
     string key = ""; 
     if (response.StatusCode == HttpStatusCode.OK) 
     { 
      JsonDeserializer deserial = new JsonDeserializer(); 
      OssBucketsResponse bucketsResponse = deserial.Deserialize<OssBucketsResponse>(response); 
      key = bucketsResponse.key; 
     } 




     return key; // the bucket name 
    } 
+0

v1和v2 API的響應之間有變化。所以我猜想反序列化會失敗,並且OssBucketsResponse的舊對象。最好的情況是,如果你使用Postman這樣的工具來檢查你使用各種AP​​I得到的確切響應,並相應地修改代碼和聲明的類。 –