2016-12-08 6 views
0

Der Code hat:Microsoft Onedrive API-Fehler nach MS Microsoft Onedrive Update letzte Nacht

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

Bereits seit Wochen läuft gut, aber gestoppt, nachdem der Microsoft Onedrive Update letzte Nacht arbeiten. Es wird die Ausnahme 'Microsoft.Graph.ServiceException' ausgelöst, wenn wir versuchen, Dateien über die API herunterzuladen, Datei-Uploads funktionieren trotzdem. Wir erhalten auch den Fehlercode "ItemNotFound".

Unten ist die Ausnahmebedingungsnachricht und Stack-Ablaufverfolgung.

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

Können Sie Fiddler (oder etwas Ähnliches) verwenden, um die an den Dienst gerichteten Anrufe zu empfangen? Wir müssen sehen, welche Antwort zurückgegeben wird, um zu helfen. – Brad

+0

Details der Ausnahme? Microsoft Graph ähnelt einem API-Zugriffs-Wrapper, um Microsoft Web-basierte APIs zu erhalten. Ausnahmen wie 'ServiceException' haben normalerweise die genauen Details, was schief gelaufen ist (normalerweise Zugriff/Verbindungsfehler). Ohne dieses Detail würden wir nur raten. –

Antwort

0

Ich erfahre genau das gleiche Problem. Bei der Überprüfung von Fiddler scheint es sich bei der zurückgegebenen Antwort um eine Webseite mit folgender Meldung zu handeln: "Es tut uns leid, dass etwas schief gegangen ist. Leider können Sie nicht auf dieses Dokument zugreifen." Korrelations-ID: 072abf9d-7097-3000-a357-3f21c379dac7 .. . " Die Microsoft.Graph.ServiceException hat einen Fehlercode: ItemNotFound.

Dies war für Ewigkeiten funktioniert, und jetzt plötzlich aufgehört zu arbeiten.

+0

Eine kleine Ergänzung: In meinem Szenario verwende ich den OneDriveSdk zum Hochladen und Herunterladen von Dateien von Sharepoint Online – gsharp

+0

Welches SDK verwenden Sie? Wir verwenden das C# /. Net SDK. – Burnsy

1

Das Problem ist mit der Authentifizierung. Dieser Code scheint es zu beheben:

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

Dies war ein Problem im OneDrive for Business-Dienst, das seitdem behoben wurde. Wir entschuldigen uns für die Unannehmlichkeiten und haben Schritte unternommen, um die Wahrscheinlichkeit ähnlicher Fehler in der Zukunft zu minimieren.

Verwandte Themen