使用Id和Outlook REST API检索邮件项目

时间:2016-07-07 13:10:51

标签: office365api outlook-restapi office365-restapi

鉴于ID列表(又名ItemIds),我们如何使用OutlookREST Api高效检索电子邮件?

我试图伪造以下请求。

https://outlook.office365.com/api/beta/me/MailFolders/<somefolderId>/messages?$filter=((Id eq 'firstId') or (Id eq 'secondId') or (Id eq 'thirdId'))

但我收到BadRequest 400错误:“属性'Id'不支持过滤”,这很清楚。

作为一种解决方法,我使用InternetMessageId(我不关心返回电子邮件的“副本”)。有没有办法使用Id来获得更好的性能?

1 个答案:

答案 0 :(得分:1)

您最多可以为batch request中的每个ID处理20个GETbeta个请求。这仅适用于POST https://outlook.office.com/api/beta/$batch HTTP/1.1 Authorization: Bearer aGFwcHlnQGRr== Host: outlook.office.com Content-Type: multipart/mixed; boundary=batch_myBatchId --batch_myBatchId Content-Type: application/http Content-Transfer-Encoding: binary GET /api/beta/me/messages/{id1} HTTP/1.1 --batch_myBatchId Content-Type: application/http Content-Transfer-Encoding: binary GET /api/beta/me/messages/{id2} HTTP/1.1 --batch_myBatchId-- 端点。

类似的东西:

<customErrors mode="On" redirectMode="ResponseRewrite">
  <error statusCode="404" redirect="~/404.aspx"/>
</customErrors>