2017-04-10 103 views
0

我想從MS OneDrive訪問我的文件,但作爲響應,它給了我錯誤「未經授權的訪問」。 我刷新了我的訪問令牌,該應用程序有效並註冊到MS應用程序註冊門戶。微軟OneDrive和SharePoint

我看了一遍互聯網,發現沒有解決方案。

請在github repository找到代碼。 關注的方法是授權()accessAndRefreshToken()

此外,我recieving使用不同的工具不同的錯誤。當使用郵差

錯誤是:即使我已經提供與請求的訪問令牌被示

{ 
    "error": { 
    "code": "InvalidAuthenticationToken", 
    "message": "Bearer access token is empty.", 
    "innerError": { 
     "request-id": "729c6cdc-6b9e-4874-b012-5e8bdd2d91da", 
     "date": "2017-04-11T17:35:47" 
    } 
    } 
} 

此錯誤。

在使用onlinecurl.com

{ 
    "error": { 
    "code": "InvalidAuthenticationToken", 
    "message": "CompactToken validation failed with reason code: -2147184088.", 
    "innerError": { 
     "request-id": "3c1f007b-1af8-447a-89c2-eab04bd66d2e", 
     "date": "2017-04-11T17:34:26" 
    } 
    } 
} 

這是我的請求看起來像:

GET https://graph.microsoft.com/v1.0/me/drive 
--header Content-Length: 0 
--header Authorization: bearer {access_token} 

我嘗試使用v2.0代替v1.0Bearer而不是bearer。沒有運氣。

+1

請包括您的代碼,並顯示錯誤發生的位置和錯誤的詳細信息(如果它的類型等異常)。 – Richard

+0

對不起@理查德有點晚了,我已經更新了我的問題。謝謝! –

回答

1

你已經結合了舊的MSA和現代v2認證位。

你是tokenUrl是不正確的。它應該是https://login.microsoftonline.com/common/oauth2/v2.0/token

你也沒有請求任何權限範圍。最終的結果將是一個無法訪問任何內容的令牌。您可能至少需要User.ReadFiles.ReadWrite

看一看Microsoft v2 Endpoint Primer散步。