2016-05-02 11 views
0

JavaScriptを使用してOneNoteノートブックにアクセスするための単一ページアプリケーションを構築しています。出発点として、このGitプロジェクトを使用JavaScriptを使用したグラフAPIを使用したOneNoteノートブックへのアクセス

https://github.com/OfficeDev/O365-Angular-Microsoft-Graph-Connect

Iは、MSグラフに完全な権限を持つアズールADにおけるAPPのセットアップ。

私はログインしてベアラトークンを取得できますが、このエンドポイントを使用してOneNoteノートブックから情報を取得することはできません。 graph.microsoft.com/beta/me/notes/notebooksここで

は私の機能です:

function connectToOneNote(){ 
    var request = { 
     method: 'GET', 
     url: 'https://graph.microsoft.com/beta/me/notes/notebooks', 
    }; 

    // Execute the HTTP request. 
    $http(request) 
    .then(function (response) { 
     $log.debug('HTTP request to Microsoft Graph API returned successfully.', response);  
     response.status === 202 ? vm.requestSuccess = true : vm.requestSuccess = false; 
     vm.requestFinished = true; 
    }, function (error) { 
     $log.error('HTTP request to Microsoft Graph API failed.'); 
     vm.requestSuccess= false; 
     vm.requestFinished = true; 
    }); 
};   

私はこのエラーを取得する:「このユーザーアカウントのOneDriveForBusinessを取得することはできません」

ただし、グラフエクスプローラでエンドポイントを使用する場合:https://graph.microsoft.io/en-us/graph-explorer、私のノートブックは問題なく取得されます。

アイデア?

+0

確かに、Azureのmanfistで正しい自動化を設定しましたか? –

+0

ありがとうございます。はい。私は、msグラフに権限を昇格させ、oauth2AllowImplicitFlowの値を 'true'に変更しました。もっとあると思いますか? – LSmee

+0

「MSグラフへのフルアクセス許可」を定義するのに少し具体的になりますか? AADポータルのすべてのパーミッションをチェックしましたか?(ユーザーとアプリのパーミッション、またはアプリのパーミッションのみ)あなたのシナリオでは、これはむしろあまりにも多くのパーミッションのように聞こえますが、適切なOneNote権限にダイヤルするだけで、そこから作業を進めることができます。 – GarethJ

答えて

0

お返事ありがとうございます。私の答えはとてもシンプルでした。私はそれに関連付けられたO365アカウントを持っていなかった新たに作成されたADにアプリを追加しました。別のADでアクティブなO365アカウントを持つグローバル管理者としてログインしていましたが、グローバル管理者であるため、すべてのADインスタンスに対して権限を持っていました。 SMH。

関連する問題