【问题标题】:Graph api get members of channel not able get the userIdGraph api获取频道成员无法获取userId
【发布时间】:2021-12-30 10:53:40
【问题描述】:

通道的get成员的response有userid,调试的时候可以在response中找到

但是当我们尝试这样做时

 var response = await graphClient.Teams[teamid].Channels[channeId].Members
                        .Request()
                        .GetAsync();
        foreach (var res in response)
        {
            var member = new Members();
            member.UserId = res.Id;      //this id is not user id 
            member.FullName = res.DisplayName;
            members.Add(member);
        }

响应中有userId,获取不到userID,如何找回userId

【问题讨论】:

  • 我认为,你需要使用“userId”而不是id。
  • 嗨 chetan,响应中似乎没有用户 ID
  • 我能弄明白,我们必须把它装到 member.UserId = ((AadUserConversationMember)res).UserId

标签: graph microsoft-graph-api microsoft-teams microsoft-graph-teams


【解决方案1】:

我假设您的调试代码正在访问 beta api,而您的代码 sn-p 正在使用 v1.0 api。

GET https://graph.microsoft.com/beta/Teams/02bd9fd6-8f93-4758-83-1fb73740a315/channels/19:09fc54a3141a45d0bc769cf506d279@thread.skype/members

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#teams('09fd6-8f93-4758-87c3-1fb73740a315')/channels('19%3A09fc54a3141a45d0b69cf506d2e079%40thread.skype')/members",
    "@odata.count": 19,
    "value": [
        {
            "@odata.type": "#microsoft.graph.aadUserConversationMember",
            "id": "MCMjMiMjZGNkMjE5ZGQtYmM2OC00YjliLWJmMGItNGEzM2E3OTZiZTM1IyMxOTowOWZjNTRhMzE0MWE0NWQwYmM3NjljZjUwNmQyZTA3OUB0aHJlYWQuc2t5cGUjIzA3NGU1NmVhLTBiNTAtNDQ2MS04OWU1LWM2N2FlMTRhMmMwYg==",
            "roles": [],
            "displayName": "Lee Gu",
            "visibleHistoryStartDateTime": "0001-01-01T00:00:00Z",
            "userId": "074e56ea-0b50-4461-89e5-ae14a2c0b",
            "email": "LeeG@M365x2143.onmicrosoft.com",
            "te
...

相对于 1.0 api:

GET https://graph.microsoft.com/v1.0/Teams/02bd9fd6-8f93-4758-87c3-1fb73740a315/channels/19:09fc54a3141a45d0bc769cf506d2e079@thread.skype/members

{
    "error": {
        "code": "Forbidden",
        "message": "Caller does not have the required permissions for accessing this API. AllowedPermissions:'ChannelMember.Read.All,ChannelMember.ReadWrite.All'",
        "innerError": {
            "date": "2022-02-07T23:54:32",
            "request-id": "d82250a3-9637-4626-8afd-499ea3fd519e",
            "client-request-id": "d82250a3-9637-4626-8afd-499ea3fd519e"
        }
    }
}

v1.0 api 似乎有更严格的权限要求。

【讨论】:

  • 即使我有同样的问题,v1.0 有错误,但 beta 似乎可以工作
猜你喜欢
  • 1970-01-01
  • 2020-09-11
  • 2022-09-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-02-04
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多