SharePoint-Microsoft Graph API:子网站列表为空



Microsoft Graph API在调用时不返回根网站的子网站列表

GET https://graph.microsoft.com/v1.0/sites/root/sites

(经过OAuth2样板之后(。

我已经检查了我的子网站网址,它在下很好

GET https://{org_name}.sharepoint.com/sites/{mysite}

然而,如果我试图通过这里提到的路径获得网站

https://learn.microsoft.com/en-us/graph/api/site-getbypath?view=graph-rest-1.0

GET https://graph.microsoft.com/v1.0/sites/root:/sites/mysite

它找到网站,并返回其信息。这需要我提前知道网站的名称。但我希望能够首先列出网站,然后选择一个。

我的问题是,如果列表端点/sites/root/sites什么都不返回,或者我在某些设置上丢失了,导致网站无法列出,那么它的意义何在?

我正在使用范围Sites.ReadWrite.All

事实证明,授权代码是错误的方法,因为它只代表一个用户进行连接,而sharepoint端点列出了整个组织的站点。我尝试了另一个流,它代表应用程序/组织使用管理员同意进行连接:https://learn.microsoft.com/en-us/graph/auth-v2-service?context=graph%2Fapi%2Fbeta&view=图休息测试版

这是客户端证书授予的一个稍微修改过的版本,因为在标准OAuth 2中,客户端证书授予只需要一个请求,但这个请求需要两个请求。我认为这是授权代码和客户端凭据的混合。这仅适用于Microsoft。不管怎样,在经历了这个流程之后,我能够看到网站列表。问题已解决。

最新更新