2016-06-13 12 views
0

Es ist erforderlich, die Outlook-Kalenderereignisse von einer SharePoint-Onlinesite zu erfassen. Dafür verwende ich Rest API. Um die Ereignisse zu erfassen, habe ich eine Anwendung in Outlook Dev Center erstellt. Mit dieser Client-ID kann ich den Benutzer autorisieren und den autorisierten Code für die Antwort erhalten. aber ich kann das Access-Token nicht mit dieser Client-ID, dem geheimen Client, abrufen. Es wird ein "Unauthorized client, die Anwendung xxx wird nicht für die API-Version nicht unterstützt" -Fehler ausgelöst. Ich bekomme auch den gleichen Fehler in der Postman-API. Wie auch immer, ich kann die Kalenderereignisse während des Versuchs in "oAuth SandBox" (https://oauthplay.azurewebsites.net/) abrufen und die Ereignisse abrufen. Ich habe einen Inhalts-Editor in meiner Sharepoint-Online-Site, um das Access-Token zu erhalten. Im Folgenden ist der Code, den ich in Content-Editor verwendet,Zugriffstoken für Outlook-Kalender abrufen

jQuery.ajax ({ url: "//outlook.office365.com/common/oauth2/token", Typ: "post", Header: { "Content-Type": "application/x-www-form-urlencoded" }, Daten: { grant_type: "authorization_code", Code: myaccesscode, client_id: myclientID, client_secret: myclientsecret, redirect_uri: "https://myredirecturl" }, Erfolg: Funktion (Antwort) { Alarm (Antwort); } Fehler: Funktion (status.err) { Warnung ("Fail"); } });

Vielen Dank im Voraus.

Antwort

0

Ich fand die Lösung. So erhalten Sie Outlook-Kalenderereignisse müssen die folgenden Schritte ausführen: 1. Erwerben Sie den Zugriffscode 2. Erwerben Sie den Zugriffstoken mithilfe des im obigen Schritt erhaltenen Zugriffscodes. 3. Ermitteln Sie die Ereignisse, indem Sie das in Schritt 2 erhaltene Zugriffstoken als Autorisierungsheader übergeben.

+0

ich bin auch in der Lage Ereignisse aus dem Kalender holen durch zu aber etwas, wenn ich durch die Schaffung von Token jene api in meiner eigenen Anwendung verwenden mag, bin ich Code zu generieren, nicht in der Lage . – manish1706

0

Sobald Sie einen Zugriffscode erhalten haben, können Sie den folgenden Code verwenden.

function GetEvents(token) {    
     var call = $.ajax({ 
      url: "https://outlook.office.com/api/v2.0/me/events", 
      type: "GET", 
      dataType: "json", 
      headers: { 
       Accept: "application/json;odata.metadata=minimal;odata.streaming=true", 
       'Authorization': "Bearer " + token 
      }, 
      success: function (data) {     
       //Success Call back 
      }, 
      error: function (xhr) { 
       //error call back 
      } 
     }); 
    }