2016-05-02 61 views
0

我正在構建一個包含JavaScript的單頁應用程序,以訪問用戶的OneNote筆記本電腦。使用JavaScript訪問帶有圖形api的OneNote筆記本電腦

使用該GIT中項目爲起點:https://github.com/OfficeDev/O365-Angular-Microsoft-Graph-Connect

我設置在天青AD該應用與完全權限MS圖。

我可以登錄並獲取不記名令牌,但我無法從使用此端點的我的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上使用O365帳戶,但由於它是全局管理員,因此它擁有所有AD實例的權限。 SMH。

相關問題