繁体   English   中英

在 Java 中获取 Microsoft Graph API 的令牌

[英]Get token for Microsoft Graph API in Java

我想使用 Microsoft Graph API 来管理 Drive 文件,但我在身份验证方面遇到了一些麻烦...

我有下面的代码来获得访问我的帐户的权限:

try(InputStream propFile = MicrosoftEngine.class.getClassLoader().getResourceAsStream("microsoft.properties")){
      Properties prop = new Properties();
      prop.load(propFile);

      setGraphClient(GraphServiceClient.builder().authenticationProvider(request -> {
        // Add the access token in the Authorization header
        request.addHeader("Authorization", "Bearer " + prop.getProperty("token"));
      }).buildClient());

      IDriveItemCollectionPage children = graphClient.me().drive().root().children().buildRequest().get();
      setDrive(children);
    }
    catch(IOException e) {
      e.printStackTrace();
    }

但目前,“token”属性的值取自 Microsoft Graph Explorer :

示例在这里

一段时间后(可能是一个小时),令牌过期,我需要通过 Graph Explorer 发送另一个请求以获得新令牌并将其复制/粘贴到我的 Java 代码中。

但这并不方便...如何在 Java 中获取此令牌值? 有任何想法吗 ?

在此先感谢您的帮助 :)

对于身份验证,您首先需要实施 MSAL 以从 AAD 获取令牌。 您可以从这里开始在 Microsoft Graph 中实现身份验证。 您可以尝试此示例以开始实施 Microsoft Graph for JAVA。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM