Microsoft Graph SDK for PHP-400错误请求-尝试获取数据

Microsoft Graph SDK for PHP-400错误请求-尝试获取数据,php,microsoft-graph-api,Php,Microsoft Graph Api,我已将Excel文件添加到驱动器中。我想从中获取数据,因此首先我根据azure门户上的文档向我的应用程序添加了权限(Files.ReadWrite) 首先,我从这个url获得一个访问令牌: 我收到一个令牌,然后使用该令牌从url完成GET请求: https://graph.microsoft.com/v1.0/me/drive/items/{drive item id}/workbook/worksheets/XX/range(address='A4:C4) 当然,我根据文档设置了一个令牌 '

我已将Excel文件添加到驱动器中。我想从中获取数据,因此首先我根据azure门户上的文档向我的应用程序添加了权限(Files.ReadWrite)

首先,我从这个url获得一个访问令牌:

我收到一个令牌,然后使用该令牌从url完成GET请求:
https://graph.microsoft.com/v1.0/me/drive/items/{drive item id}/workbook/worksheets/XX/range(address='A4:C4)

当然,我根据文档设置了一个令牌

'headers' => [
     'Accept' => 'application/json',
     'Authorization' => 'Bearer ' . $this->token
]
作为回应,我得到:

消息:客户端错误:获取。。。 导致400个错误的请求响应:{“错误”:{“代码”: “BadRequest”、“message”:“当前经过身份验证的上下文无效 用于此请求。(截断…)

我应该如何授权/获取令牌使其工作


致以最诚挚的问候

您不能将
/me
与客户端凭据(即应用程序范围)一起使用,因为没有“me”。您需要指定
/users/{userId | userPrincipalName}

您不能将
/me
与客户端凭据(即应用程序范围)一起使用,因为没有“me”。您需要指定
/users/{userId | userPrincipalName}

这里没有太多细节。请解释您是如何获得令牌的。@Marclafler我请求了“”提供客户端\u id、作用域、重定向\u uri、客户端\u机密和授予\u类型。从中,我得到了我有权访问的对象\u令牌或我的令牌,我在下一个请求中仍然使用这些令牌。这里没有太多的细节。请解释如何获得令牌。@Marclafler我请求了“”提供客户端id、作用域、重定向uri、客户端机密和授予类型。从中,我获得了我有权访问的对象\u令牌或我的令牌,我在下一个请求中仍然使用这些令牌。谢谢。如何获取用户id或userPrincipalName?您可以从
/users
检索它。我已向应用程序添加了权限,我更改了登录端点,而不是“common”我有一个租约ID,但现在得到了“Authorization\u RequestDenied”。我缺少什么?任何订阅?您不能将
/common
与客户端凭据一起使用。您需要提供租户ID,以便它知道您也在验证哪个租户(
common
依赖于用户的电子邮件地址来确定这一点).是的,我写道我使用了提供租户id,但我有“授权请求被拒绝”“现在。我现在应该怎么做?我设置了应用程序的权限。我应该订阅吗?谢谢。如何获取userId或userPrincipalName?您可以从
/users
检索它。我已经向应用程序添加了权限,我更改了登录端点而不是“common”。我有一个租约ID,但现在获得了“Authorization\u RequestDenied”。我缺少什么?任何订阅?您不能将
/common
与客户端凭据一起使用。您需要提供租户id,以便它知道您也在验证哪个租户(
common
依赖于用户的电子邮件地址来确定)。是的,我写道我使用了提供租户id,但我有“授权请求被拒绝”现在。我现在应该怎么做?我设置了应用程序的权限。我应该订阅吗?