2016-09-20 70 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天。 –

相关问题