【问题标题】:Contains filter on Microsoft Graph query not working包含 Microsoft Graph 查询上的筛选器不起作用
【发布时间】:2016-06-04 02:15:36
【问题描述】:

我正在尝试在 /users 查询中使用 contains 过滤器,例如: https://graph.microsoft.com/v1.0/users?$filter=contains(displayName, 'Garth')

但是,这会导致 BadRequest 响应说“发现了一个名为 'contains' 的未知函数。这也可能是对导航属性的键查找,这是不允许的。”

根据 OData 4.0 规范,包含过滤器应该可用。有没有办法在用户列表上使用包含过滤器?

【问题讨论】:

    标签: microsoft-graph-api


    【解决方案1】:

    contains 功能对用户不可用。 startsWith 可用。
    例如https://graph.microsoft.com/v1.0/users?$filter=startswith(displayName,'Garth').

    【讨论】:

      【解决方案2】:

      此外,您还可以尝试人员 API(仅在 /beta 上可用)。这支持 $search AND 将进行模糊和语音匹配。 https://graph.microsoft.com/beta/me/people?$search=Garth

      【讨论】:

      • 此搜索仅通过您的联系人列表进行(或者可能通过电子邮件搜索)。但结果真的很奇怪,看起来与我无关。它不是在你所有的租户中寻找人
      • 这是正确的 - 人们是关于你最常与之交流的人。目前,它不允许搜索租户中的所有用户。 Marek 的观点是正确的——我们不支持搜索用户——只支持startswith 过滤器。您可以在 UserVoice 上提出请求 - officespdev.uservoice.com/forums/…
      • 我很惊讶这还没有实现......
      猜你喜欢
      • 2019-02-18
      • 1970-01-01
      • 2018-11-10
      • 1970-01-01
      • 2023-01-14
      • 1970-01-01
      • 2021-03-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多