Office365 使用“访问Office 365发现服务”;“仅适用于应用程序”;代币

Office365 使用“访问Office 365发现服务”;“仅适用于应用程序”;代币,office365,Office365,我正在尝试使用通过以下方式获得的“仅应用程序”令牌查询Office 365发现服务REST API,但它返回的访问被拒绝。有没有办法让这一切顺利进行 {u'error': {u'message': u'Access denied. You do not have permission to perform this action or access this resource.', u'code': u'-2147024891, System.UnauthorizedAccessExceptio

我正在尝试使用通过以下方式获得的“仅应用程序”令牌查询Office 365发现服务REST API,但它返回的访问被拒绝。有没有办法让这一切顺利进行

{u'error': {u'message': u'Access denied. You do not have permission to perform this action or access this resource.', u'code': u'-2147024891, System.UnauthorizedAccessException'}} 

发现服务不支持仅应用程序令牌,因为发现的目标是为应用程序提供给定用户的端点。 也就是说,这里提供的错误消息不是很有用,我们将进行后续更新。
多谢各位

如果服务(deamon)应用程序也能发现office 365 API rest端点,那就太好了。另一种选择是代码中的硬代码URL为什么discovery api不支持仅应用程序令牌?这是一样的-告诉我我能做什么,端点是什么。如果没有它,我们必须对URL进行硬编码,而且我们并不总是知道域名是什么。发现服务只支持以用户为中心的场景,以获取当前用户的端点。对于deamon或appOnly方案,我们将向Office 365统一API添加appOnly支持,在这种情况下,您不需要发现服务,因为只有一个端点。要将OneDrive用于业务,我需要发现租户特定的根URL。即使我使用了一个仅应用程序令牌,我仍然需要发现URL以发出请求,否则URL是未知的。我应该如何查找URL?我建议您使用Microsoft Graph查找URL:查找OneDrive端点(又名SharePoint MySite):选项1:,选项2:。要查找SharePoint根站点,请执行以下操作: