Microsoft Graph API-无法使用结尾为

时间:2019-03-14 11:27:34

标签: microsoft-graph

要过滤Microsoft Graph API响应,文档建议使用filter查询选项。

在这里,我在startswith端点上使用了endswith'/me/messages'字符串函数。

query = {
    '$filter': "
      startswith(from/emailAddress/address, 'abcd')
      or endswith(from/emailAddress/address, 'gmail.com')"
  }

仅使用startswith返回预期的响应。将endswith函数添加到过滤器查询后,收到的响应是错误。

{
  "error": {
    "code": "ErrorInvalidUrlQueryFilter",
    "message": "The query filter contains one or more invalid nodes.",
    "innerError": {
      "request-id": "0d12e1f6-6105-4826-9656-8613f8c167ed",
      "date": "2019-03-14T11:05:56"
    }
  }
}

1 个答案:

答案 0 :(得分:0)

要将 $filter 与 endsWith 一起使用,您需要:

  1. 将 $count=true 添加到查询参数
  2. 添加 ConsistencyLevel:最终请求标头

示例:'https://graph.microsoft.com/v1.0/users?$count=true&ConsistencyLevel=eventual&$filter=endswith(mail,'@hotmail.com')'

**它适用于 mail 和 userPrincipalName 但不适用于 displayName