Calendar Office 365上的EWS GetFolder错误

Calendar Office 365上的EWS GetFolder错误,calendar,office365,exchangewebservices,Calendar,Office365,Exchangewebservices,我有一个office 365帐户,帐户如下: 一个主要用户:mainuser@company.onmicrosoft.com 其他用户:someuser@company.onmicrosoft.com someuser@company.onmicrosoft.com与共享了他的日历mainuser@company.onmicrosoft.com 然后我执行以下EWS操作(通过mainuser@company.onmicrosoft.com)获取为设置的日历权限的步骤someuser@comp

我有一个office 365帐户,帐户如下:

  • 一个主要用户:mainuser@company.onmicrosoft.com
  • 其他用户:someuser@company.onmicrosoft.com
someuser@company.onmicrosoft.com共享了他的日历mainuser@company.onmicrosoft.com

然后我执行以下EWS操作(通过mainuser@company.onmicrosoft.com)获取为设置的日历权限的步骤someuser@company.onmicrosoft.com

<?xml version="1.0"?>
<soap:Envelope 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="Exchange2010"/>
  </soap:Header>
  <soap:Body>
    <GetFolder xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">

      <FolderShape>
        <t:BaseShape>Default</t:BaseShape>
        <t:AdditionalProperties>
          <t:FieldURI FieldURI="folder:PermissionSet"/>
        </t:AdditionalProperties>
      </FolderShape>

      <m:FolderIds>
        <t:DistinguishedFolderId Id="calendar">
          <t:Mailbox>
            <t:EmailAddress>someuser@company.onmicrosoft.com</t:EmailAddress>
          </t:Mailbox>
        </t:DistinguishedFolderId>
      </m:FolderIds>

    </GetFolder>
  </soap:Body>
</soap:Envelope>

违约
someuser@company.onmicrosoft.com
一切正常,我得到的回应如下:

<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Header>
    <h:ServerVersionInfo xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" MajorVersion="15" MinorVersion="20" MajorBuildNumber="56" MinorBuildNumber="13" Version="V2017_07_11"/>
  </s:Header>
  <s:Body>
    <m:GetFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages>
  <m:GetFolderResponseMessage ResponseClass="Success">
    <m:ResponseCode>NoError</m:ResponseCode>
    <m:Folders>
      <t:CalendarFolder>
        <t:FolderId Id="some-folder-id"/>
        <t:DisplayName>Calendar</t:DisplayName>
        <t:TotalCount>67</t:TotalCount>
        <t:ChildFolderCount>2</t:ChildFolderCount>
        <t:PermissionSet>
          ...    
        </t:PermissionSet>
      </t:CalendarFolder>
    </m:Folders>
  </m:GetFolderResponseMessage>
</m:ResponseMessages>
    </m:GetFolderResponse>
  </s:Body>
</s:Envelope>

无误
历法
67
2.
...    
除非someuser@company.onmicrosoft.com与一名外部联系人共享他的日历,然后当我执行同一请求时,我突然收到此响应错误

<?xml version="1.0" encoding="utf-8"?>
<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/">
  <s:Header>
    <h:ServerVersionInfo xmlns:h="http://schemas.microsoft.com/exchange/services/2006/types" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" MajorVersion="15" MinorVersion="20" MajorBuildNumber="56" MinorBuildNumber="13" Version="V2017_07_11"/>
  </s:Header>
  <s:Body>
    <m:GetFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<m:ResponseMessages>
  <m:GetFolderResponseMessage ResponseClass="Error">
    <m:MessageText>Access is denied. Check credentials and try again., Can't look up the requested Entry ID.</m:MessageText>
    <m:ResponseCode>ErrorAccessDenied</m:ResponseCode>
    <m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
    <m:Folders/>
  </m:GetFolderResponseMessage>
</m:ResponseMessages>
    </m:GetFolderResponse>
  </s:Body>
</s:Envelope>

访问被拒绝。检查凭据并重试。无法查找请求的条目ID。
错误访问被拒绝
0
我不明白为什么Office 365会返回EWS错误,而不是过滤我们不应该访问的数据。。。我们应该能够获得有关内部组织的日历权限,而不考虑任何外部日历共享


是否有人对计划解决方案有相同的问题或信息?

与您有相同的问题。在o365中轻松复制。