我尝试使用Microsoft Graph Node.JS API检索所有不包含“类别”(“类别”是字符串的集合)的邮件。
我可以检索类别为“ xyz”的邮件,反之则不行。
此代码成功检索所有具有“ xyz”类别的邮件:
.api("/users('mybox@mydomain.com')/mailfolders/inbox/messages")
.top(10)
.select('subject,from,receivedDateTime')
.filter("categories/any(t:t eq 'xyz')")
.orderby('receivedDateTime DESC')
.get();
当我尝试时:
.filter("categories/any(t:t ne 'xyz')")
我收到所有邮件(带有或不带有“类别”“ xyz”)
当我尝试时:
.filter("not categories/any(t:t eq 'xyz')")
我收到{"code": "BadRequest","message":"Filter not supported."}
当我尝试时:
.filter("categories/all(t:t ne 'xyz')")
我收到{"code": "BadRequest","message":"Filter not supported."}
答案 0 :(得分:0)
您设法解决了这个问题吗?我猜您尝试过的3个选项中有2个是可以解释的:
.filter("categories/any(t:t ne 'xyz')")
这将返回已分配了与“ xyz”不同的任何类别或未分配任何类别的邮件。.filter("not categories/any(t:t eq 'xyz')")
我没有设法使过滤器与not关键字一起使用.filter("categories/all(t:t ne 'xyz')")
据我所知,MS Graph API不支持'all'关键字