Microsoft Graph API-从ID列表中获取目录对象-错误的请求

时间:2018-11-13 05:51:44

标签: azure-active-directory microsoft-graph

我需要获取用户是使用Microsoft Graph API成员的组的列表。

为此,我正在使用端点POST /users/<userId>/getMemberGroupsdoc)。这可以正常工作,但问题是响应只是组对象ID的列表。我也需要获取组属性。我可以遍历列表和查询GET /groups/<groupId>的API,但是当用户有多个组时,这会花费很长时间。

然后我发现POST /directoryObjects/getByIddoc)将列表变成了我所需要的。我完全按照文档页面操作,但是出现以下错误:

Request_BadRequest-请求目标不允许使用指定的HTTP方法。(HTTP状态405)

我在做什么错?方法getById是否有问题?如果是,是否还有其他方法可以将组对象ID列表变成组或获得用户组的完整列表?

1 个答案:

答案 0 :(得分:1)

您提到的API Get directory objects from a list of ids应该可以工作,我在MS Graph Explorer中对其进行了测试,效果很好。

请确保您使用的是POST方法,我可以使用其他方法重现您的问题。

enter image description here

您可以参考以下信息,然后重试。

请求网址:

POST https://graph.microsoft.com/beta/directoryObjects/getByIds

请求正文:

{
  "ids": [
        "xxxxxxxx-9f1b-4f28-a408-xxxxxxxxxxxx",
        "xxxxxxxx-a614-4335-81eb-xxxxxxxxxxxx",
        "xxxxxxxx-e500-49d6-a705-xxxxxxxxxxxx",
        "xxxxxxxx-5be3-41eb-864d-xxxxxxxxxxxx",
        "xxxxxxxx-961d-4db9-87cf-xxxxxxxxxxxx",
        "xxxxxxxx-93bf-4950-8d96-xxxxxxxxxxxx"
  ],
  "types": [
    "group"
  ]
}

结果:

enter image description here