Outlook REST API - 获取登录用户的电子邮件地址

Outlook REST API - Get logged in user's email address

如何使用 Outlook REST 获取登录用户的电子邮件地址 API?

我正在使用 com.microsoft.services.outlook.fetchers.OutlookClienthttps://github.com/OfficeDev/Office-365-SDK-for-Java/blob/master/sdk/outlook-services/src/main/java/com/microsoft/services/outlook/fetchers/OutlookClient.java)。

从 JWT 访问令牌中提取它是唯一的方法吗(参见 here and here)? (代币的最新变化 here

谢谢

更新: 正在关注 this approach

..似乎也不起作用,我只是将 Top of Information Store 作为显示名称。

Office 365 SDK for Java目前只提供Outlook服务。我们还可以通过直接制作 REST 通过元数据获取登录用户的电子邮件地址。 这是供您参考的 REST 请求:

GET: https://outlook.office.com/api/v2.0/me
authorization: bearer {Token}

您将得到如下响应:

根据飞雪的回答,这是需要的代码:

Futures.addCallback(mClient.getMe().read(), new FutureCallback<User>() {
    @Override
    public void onSuccess(User result) {
        Log.d("APP", "Logged in user's email address: "+result.getEmailAddress());
    }

    @Override
    public void onFailure(@NonNull Throwable t) {
        Log.e("Email fetch failure. Cause:", t.getMessage());
    }
});