2016-12-08 31 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服务,此后已解决的问题。对于造成的不便,我们深表歉意,并已采取措施尽量减少将来发生类似故障的可能性。