2016-12-08 26 views
0

代碼:Onedrive API錯誤後MS昨晚OneDrive更新

var stream=await this.oneDriveClient.Drive.Items[itemid].Content.Request().GetAsync(); 

已經運行罰款周,但停止Onedrive更新昨晚工作後。 當我們嘗試使用API​​下載文件時,拋出異常'Microsoft.Graph.ServiceException',文件上傳仍然有效。我們也收到「ItemNotFound」錯誤代碼。

下面是異常消息和堆棧跟蹤。

ex.Message: Exception of type 'Microsoft.Graph.ServiceException' was thrown. 
ex.StackTrace: 
    at Microsoft.Graph.HttpProvider.<SendAsync>d__19.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult() 
    at Microsoft.Graph.BaseRequest.<SendRequestAsync>d__34.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1.ConfiguredTaskAwaiter.GetResult() 
    at Microsoft.Graph.BaseRequest.<SendStreamRequestAsync>d__33.MoveNext() 
-- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 
    at System.Runtime.CompilerServices.TaskAwaiter`1.GetResult() 
    at TMSPro.Shared_Objects.ucOneDriveBrowser.<btnDownload_Click>d__5f.MoveNext() in c:\Working\TMSPro_VS2012\TMSPro\Shared_Objects\ucOneDriveBrowser.cs:line 1083 
+0

您可以使用Fiddler(或其他類似的東西)來獲取對該服務進行的調用嗎?我們需要了解什麼樣的反應正在返回幫助。 – Brad

+0

異常的詳細信息? Microsoft Graph有點像API訪問包裝來獲取基於Microsoft Web的API。像「ServiceException」這樣的異常通常具有錯誤的確切細節(通常是訪問/連接錯誤)。沒有那個細節,我們只會猜測。 –

回答

0

我遇到了完全相同的問題。在檢查Fiddler時,似乎返回的響應是一個網頁,其中包含以下消息:「抱歉出錯了,對不起,您無法訪問此文檔...相關ID:072abf9d-7097-3000-a357-3f21c379dac7 .. 。「 Microsoft.Graph.ServiceException有一個錯誤代碼:ItemNotFound。

這是工作了很長時間,現在突然停止工作。

+0

一個小的補充:在我的方案中,我使用OneDriveSdk從Sharepoint Online上傳和下載文件 – gsharp

+0

您正在使用哪個SDK?我們正在使用C#/ .Net SDK。 – Burnsy

1

問題在於身份驗證。此代碼似乎解決它:

var adalAuthProvider = new AdalAuthenticationProvider(
        this.AadClientId, 
        this.AadReturnUrl); 

      this.oneDriveClient = new OneDriveClient(this.AadTargetUrl + "/_api/v2.0", adalAuthProvider, new HttpProvider(new HttpClientHandler { AllowAutoRedirect = true }, true)); 
      authTask = adalAuthProvider.AuthenticateUserAsync(this.AadTargetUrl); 

      try 
      { 
       await authTask; 
      } 
0

這是在OneDrive for Business服務,此後已解決的問題。對於造成的不便,我們深表歉意,並已採取措施儘量減少將來發生類似故障的可能性。