Python 无效的访问群体URI错误服务到服务应用程序,onedrive for business

Python 无效的访问群体URI错误服务到服务应用程序,onedrive for business,python,oauth-2.0,onedrive,office365api,Python,Oauth 2.0,Onedrive,Office365api,我正在尝试从Office 365 for Business帐户检索文件 以下说明如下: 我已成功获取应用程序的访问令牌 但是,当我尝试使用令牌进行API调用时,我收到了错误消息 “https://[tenant-redacted]-my.sharepoint.com//u-api/v2.0/drive/-401:{“错误”:“无效的客户端”,“错误描述”:“无效的访问群体Uri”http:\/\/[redacted]-电子表格测试webapi.[tenant-url-redacted].com

我正在尝试从Office 365 for Business帐户检索文件

以下说明如下:

我已成功获取应用程序的访问令牌

但是,当我尝试使用令牌进行API调用时,我收到了错误消息

“https://[tenant-redacted]-my.sharepoint.com//u-api/v2.0/drive/-401:{“错误”:“无效的客户端”,“错误描述”:“无效的访问群体Uri”http:\/\/[redacted]-电子表格测试webapi.[tenant-url-redacted].com\/'.}

我对sharepoint URL的调用是一个简单的GET请求,其标题设置如下:

  headers = {
                'User-Agent' : 'python_tutorial/1.0',
                'Authorization' : 'Bearer {0}'.format(access_token),
                'Accept' : 'application/json',
        }
我已确认我使用的资源URI与Active Directory配置中的应用程序ID URI匹配,并已将适当的sharepoint权限(所有网站集中的读写项目、读写用户文件)委派给应用程序

我一直在尝试各种API端点、不同的“资源”参数值,并多次重新阅读各种文档

我还可以通过Graph API发出请求,但是它没有我需要的功能(访问/更新users onedrive中的文件)

我不知道我错过了什么,如果有任何帮助,我们将不胜感激。

我也有同样的问题

我使用OneDrive for business API(而不是office 365管理API)下载\上载文件,这意味着在检索访问令牌时提供的
资源
参数应为:

https://[tenant redacted]-my.sharepoint.com

请尝试使用JWT解码器打开访问令牌(JWT格式),以验证受众(我曾经这样做过,您在
有效负载下查看的参数是
aud
)这正是您所期望的。

谢谢您的回答,我在Microsoft开发人员支持的帮助下解决了这个问题,他们让我完全按照您的建议去做。我不知道JWT只是一个不透明的令牌,能够解包并检查细节非常有用。