2016-09-20 107 views
1

我已經在Java中創建了一個簡單的應用程序,它連接到我的Office 365帳戶並檢索未讀消息。我正在執行一些文本匹配和模式匹配以生成一些我通過電子郵件收到的報告。Office365的OAuth2適用於Java應用程序的REST API

我正在使用基本身份驗證下面的URL來這樣做。

https://outlook.office365.com/api/v1.0/me/messages?$濾芯的IsRead%20當量%20false

但是,我讀了幾篇文章,其中大部分都認爲,基本驗證將不被支持,並建議使用OAuth2.0的。

我不確定如何使用OAUTH2.0。有幾篇文章提到有關使用AAD註冊應用程序的問題,因爲我需要訪問Azure管理門戶,但我沒有這些門戶。請任何人指導我如何做到這一點。

PS:我用我的企業域帳戶訪問Office

回答

1

你是正確的,基本不會繼續得到支持。您不需要Azure管理門戶來註冊應用程序,您可以使用App Dev門戶(apps.dev.microsoft.com)獲取客戶端ID和密碼。

以下是從零開始創建Java Web應用程序的演練:https://dev.outlook.com/restapi/tutorial/java。它顯示瞭如何註冊應用程序並進行身份驗證。

+0

謝謝傑森..這肯定會有幫助...我不是在Web應用程序上工作..雖然..我有一個簡單的獨立Java應用程序與HTTPClient一起使用。如果你在這方面有任何東西,它會有所幫助。 – Nishant

+0

找到了一種方法...我已經授權應用程序離線訪問(即範圍= offline_access ....),並能夠檢索與每個訪問令牌請求,我安全地保存到文件中的刷新令牌。當第一個令牌到期時。我只是簡單地重新使用刷新標記來獲取一個沒有登錄的新標記。這種方法是否正確?我不認爲刷新令牌已過期。請澄清 – Nishant

+0

是的,您正處於正確的軌道上。從本地應用程序,您還可以彈出瀏覽器進行初始登錄並接收認證碼部分。刷新令牌在14天后過期,但是一旦你使用了它們,你會得到一個新的令牌,這有助於再過14天。 –

相關問題