即使附件存在,交换EWS'HasAttachment'属性也返回False

时间:2017-06-13 14:04:48

标签: xml soap wsdl exchange-server exchangewebservices

我正在编写一个脚本,该脚本使用Exchange EWS API将日历上的附件保存到本地文件中。当我在任何用户帐户上执行此操作时,它可以正常工作,但是,当我尝试在共享资源帐户上使用它时,它会失败。

我也可以在Postman中重现这一点。调用GetItem请求(见下文)将返回所有项目数据,但资源帐户上不存在AttachmentId。我的用户帐户上的相同请求确实返回AttachmentId。在资源帐户上调用时,HasAttachments字段也显示False。

资源帐户中是否缺少某些属性或值?

GetItem:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
  xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
  xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages">
<soap:Header>
    <t:RequestServerVersion Version="Exchange2007_SP1" />
</soap:Header>
  <soap:Body>
    <m:GetItem>
      <m:ItemShape>
        <t:BaseShape>AllProperties</t:BaseShape>
        <t:AdditionalProperties>
          <t:FieldURI FieldURI="item:Attachments" />
          <t:FieldURI FieldURI="item:HasAttachments" />
        </t:AdditionalProperties>
      </m:ItemShape>
      <ItemIds>
        <t:ItemId Id="AAAlAF..." ChangeKey="CQAAAB..." />
      </ItemIds>
     </m:GetItem>
   </soap:Body>
</soap:Envelope>

编辑:这绝对是帐户本身的问题,因为OWA也没有显示附件。共享日历帐户可以接受附件吗?

1 个答案:

答案 0 :(得分:1)

  
    

我在资源帐户中缺少一些属性或值吗?

  

如果这是一个自动接受会议的资源邮箱,那么邮箱的默认配置是出于安全原因删除附件。

“DeleteAttachments参数指定是否从所有传入消息中删除附件。此参数的有效输入为$ true或$ false。默认值为$ true。 此参数仅用于AutomateProcessing参数设置为AutoAccept的资源邮箱。“

re https://technet.microsoft.com/en-us/library/dd335046(v=exchg.160).aspx