Odata查询outlook rest api

seb*_*cha 9 rest outlook json odata

如何在同一个查询中使用搜索和过滤?

String url = "https://outlook.office.com/api/v2.0/me/messages?$filter=ReceivedDateTime ge 2016-02-22&$select=Subject,From,Body,ReceivedDateTime&$search=\"subject:(Chris Brown OR Michael Jackson)\"";
Run Code Online (Sandbox Code Playgroud)

我需要找到的所有邮件Subject具有或者"克里斯·布朗"或"迈克尔·杰克逊",并邮寄2月22日之后收到的日期,2016年还应该有Subject,From,Body,ReceivedDateTime在REST响应.

有人可以帮忙吗?

仅供参考-我得到的输出,如果它有两种filtersearch.但是当一起使用时,我收到"错误请求"错误.

Rom*_*nev 5

现在这不受支持.从使用OData查询参数:

您不能在搜索请求中使用$ filter$ orderby.

因此,执行此操作的唯一方法是通过查询执行搜索,然后在客户端上进行过滤; 或相反亦然.

更新

在这种特殊情况下,由于主题是可过滤的,并且据说您只需要精确的主题匹配(例如,不是"包含"),您可以使用以下内容:

https://outlook.office.com/api/v2.0/me/messages?$filter=(ReceivedDateTime ge 2016-02-22) and ((subject eq 'Chris Brown') or (subject eq 'Michael Jackson'))
Run Code Online (Sandbox Code Playgroud)