2016-03-07 164 views
1

我試圖使用MS Graph API從OneDrive for Business獲取文件/文件夾的列表。我已經成功地執行了我在Graph Explorer中需要的查詢,現在正在我的項目中進行實施。圖API:scp或role聲明需要存在於令牌中

我的應用程序是一個Windows服務,所以我獲得使用this method

我已經成功地獲取一個令牌的令牌,但是當我「GET」這個網址... //graph.microsoft.com/v1.0/users('someuseraccount')/drive/items/somedriveitem/microsoft.graph.createLink

。 ..我得到響應與錯誤:

​​

我從服務器令牌響應如下:

{ 
    "token_type": "Bearer", 
    "expires_in": "3600", 
    "scope": "Directory.AccessAsUser.All Files.Read Files.Read.Selected Files.ReadWrite Files.ReadWrite.AppFolder Files.ReadWrite.Selected profile Sites.Read.All User.Read", 
    "expires_on": "1457343736", 
    "not_before": "1457339836", 
    "resource": "https://graph.microsoft.com", 
    "access_token": "-the token-" 
} 
+0

您能否提供您的通話的請求ID和時間戳? –

+0

@baparks您能否顯示爲此添加的權限的屏幕截圖? AFAIK,文件等只能使用DELEGATED權限而不是應用程序權限進行訪問。 –

回答

1

您的客戶端應用程序似乎只向Microsoft Graph請求委託權限,而應該爲此處嘗試的方案請求應用程序權限。以下是Azure門戶中應用程序權限部分的說明。請選擇所需的適當權限並重試。 application permission illustration

+0

這是問題所在。謝謝,Sriram。 – baparks

+0

@baparks您能否顯示爲此添加的權限的屏幕截圖? AFAIK,文件等只能使用DELEGATED權限而不是應用程序權限進行訪問。 –

+0

沒有在應用程序權限它說讀/寫文件等 –