Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 点击microsoft Graph的url时无法获取授权码?_Java_Azure_Azure Active Directory_Microsoft Graph Api_Access Token - Fatal编程技术网

Java 点击microsoft Graph的url时无法获取授权码?

Java 点击microsoft Graph的url时无法获取授权码?,java,azure,azure-active-directory,microsoft-graph-api,access-token,Java,Azure,Azure Active Directory,Microsoft Graph Api,Access Token,我的POC的要点是使用Java中的MicrosoftGraphAPI发送邮件。 我遵循了以下Github repo步骤,并且能够成功构建代码: 根据回购协议中提到的步骤,我应该在URL中获取授权码, 但我无法获得授权码 我对代码做了一些修改 首先,根据我的应用程序客户端ID替换客户端ID值 其次,还要更改Constants.java中的重定向URL。在回购协议中, 重定向url被称为 "". 但正如我 使用组织帐户,我提到了我的应用程序(web服务) 重定向url 还有一个我做的改动是在Mic

我的POC的要点是使用Java中的MicrosoftGraphAPI发送邮件。 我遵循了以下Github repo步骤,并且能够成功构建代码:

根据回购协议中提到的步骤,我应该在URL中获取授权码, 但我无法获得授权码

我对代码做了一些修改

  • 首先,根据我的应用程序客户端ID替换客户端ID值

  • 其次,还要更改Constants.java中的重定向URL。在回购协议中, 重定向url被称为 "". 但正如我 使用组织帐户,我提到了我的应用程序(web服务) 重定向url

  • 还有一个我做的改动是在MicrosoftAzureAD20Api.java中,我 替换了
    getAccessTokenEndpoint()和getAuthorizationBaseUrl()
    URL的 根据我的申请
  • 运行代码后,它运行正常,我也在控制台中打印了授权URL,但在URL中没有获得授权代码(我在控制台中打印了授权代码)。 预期的url(根据github)类似于:

    https://login.microsoftonline.com/common/oauth2/nativeclient?code={IAQABAAIAAABHh4kmS_aKT5XrjzxRAtHz5S...p7OoAFPmGPqIq-1_bMCAA}&session_state=dd64ce71-4424-494b-8818-be9a99ca0798
    
    但我得到的URL如下所示:

     https://login.microsoftonline.com/{{tenantId}}/oauth2/v2.0/authorize?response_type=code&client_id={{ClientId}}&redirect_uri=https%3A%2F%2Flogin.microsoftonline.com%2Fcommon%2Foauth2%2Fnativeclient&scope=Files.ReadWrite%20openid%20User.Read%20Mail.Send%20Mail.ReadWrite
    
    作为两个url中的比较,第二个url中缺少代码(我需要进一步传递)


    请帮助我。

    您得到的URL是授权URL。命令行界面在Azure Active Directory授权端点上打开浏览器窗口。您需要输入用户名和密码进行身份验证

    当您通过身份验证时,您将被带到应用程序的授权窗口。单击“授权”窗口上的“确定”按钮。然后你会得到代码


    你能把你提到的repo/教程的链接登上广告吗?@Thomas我用Git repo编辑了这篇文章link@nikitakakraniya这个问题有更新吗?