我正在使用makeEwsRequestAsync来获取电子邮件的完整MIME内容。但根据响应中的错误消息,响应大小的上限似乎为1 MB:
“ErrorMessage”:“响应超过1 MB大小限制。请修改您的EWS请求。”
<GetItem xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<ItemShape>
<t:BaseShape>IdOnly</t:BaseShape>
<t:AdditionalProperties>
<t:FieldURI FieldURI="item:MimeContent"/>
</t:AdditionalProperties>
</ItemShape>
<ItemIds><t:ItemId Id="' + itemId + '"/></ItemIds>
</GetItem>
我需要获取可能超过1 MB的消息的MIME内容,并将此类内容POST到我们的服务器。有没有办法在请求中增加此限制,或在Exchange端配置它?
答案 0 :(得分:3)
不可能向客户端发出超过1 MB的EWS请求,但是您可以向服务器提供自己发出请求所需的信息。
您首先需要致电Office.context.mailbox.getCallbackTokenAsync
,这将为您提供一个令牌,您可以使用该令牌从服务器发出EWS请求。
然后,您需要获取可通过Office.context.mailbox.item.itemId
获得的商品ID。
最后,您需要提供请求的网址,即Office.context.mailbox.ewsUrl
通过这3条信息,您的服务器可以从后端向EWS进行SOAP调用,并绕过对客户端施加的1 MB限制。此时,您可以将所需的任何信息传递给您的客户。