0
IMessageCollectionRequest eventRequest = graphClient.getGraphClient().users(user.getEmail()).messages()
                .buildRequest(new HeaderOption("Prefer", "outlook.body-content-type=\"text\""))
                .select("body,subject,toRecipients,ccRecipients,CreatedDateTime,conversationId,from");

IMessageCollectionPage eventPage = eventRequest
                                  .filter(filter)
                                  .get();

在上面的代码中,我能够根据指定的过滤器获得结果。

现在我希望执行下面的搜索而不是过滤器,因为 MS 图不支持应用这两种方法。

https://graph.microsoft.com/v1.0/users/{{UserId}}/messages?$search="recipients:@xyz.com" & $top=1000

我们如何指定搜索条件而不是过滤器。在上面的 URL 中使用 java SDK 完全显示。

4

1 回答 1

1

您可以optionsbuildRequest.

LinkedList<Option> requestOptions = new LinkedList<Option>();
requestOptions.add(new QueryOption("$search", "\"recipients:@xyz.com\""));

MessageCollectionPage messages = graphClient.users("{UserId}").messages()
    .buildRequest( requestOptions )
    .top(1000)
    .get();
于 2021-11-02T06:39:08.703 回答