使用FindPeople时无法获取其他属性 [英] Cannot fetch additional properties when using FindPeople

查看:69
本文介绍了使用FindPeople时无法获取其他属性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用原始SOAP请求从Office365获取GAL中的人员列表,默认情况下,当我尝试添加其他属性时,它只返回有关每个Persona的基本信息,例如persona:PhoneNumber或更改BaseShape到AllProperties,它返回
错误"无效的形状规范"

I'm using raw SOAP request to get a list of people from GAL in Office365, By default, it returns only basic information about each Persona, when I try to add additional properties, like persona:PhoneNumber or change BaseShape to AllProperties, it returns an error "Invalid shape specification"

如何使用此调用获取每个角色的所有属性? 

How can I get all properties for each Persona using this call? 

<?xml version="1.0" encoding="UTF-8"?>
<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="Exchange2013" />
   </soap:Header>
   <soap:Body >
      <m:FindPeople>
<m:PersonaShape>
        <t:BaseShape>IdOnly</t:BaseShape>
        <t:AdditionalProperties>
          <t:FieldURI FieldURI="persona:DisplayName"/>
          <t:FieldURI FieldURI="persona:Title"/>
          <t:FieldURI FieldURI="persona:EmailAddress"/>
<t:FieldURI FieldURI="persona:PhoneNumber"/>
        </t:AdditionalProperties>
      </m:PersonaShape>         <m:IndexedPageItemView BasePoint="Beginning" MaxEntriesReturned="100000" Offset="0"/>
         <m:ParentFolderId>
            <t:AddressListId Id="xxxxxxx-xxxx-xxxx-xxxx-xxxxxx"/>
         </m:ParentFolderId>
      </m:FindPeople>
   </soap:Body>
</soap:Envelope>

推荐答案

我不相信FindPeople会返回PhoneNumber聚合,所以你需要在每个Persona上使用GetPersona来获取详细信息。您应该可以使用

I don't believe FindPeople will return PhoneNumber aggregations so you need to use GetPersona on each Persona to get that detail. You should be able to get everything available using

<?xml version="1.0" encoding="UTF-8"?>
<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="Exchange2013_SP1" />
   </soap:Header>
   <soap:Body >
      <m:FindPeople>
      <m:PersonaShape>
        <t:BaseShape>Default</t:BaseShape>
        <t:AdditionalProperties>
              <t:FieldURI FieldURI="persona:Attributions"/>
        </t:AdditionalProperties>
       </m:PersonaShape>
         <m:IndexedPageItemView BasePoint="Beginning" MaxEntriesReturned="1000" Offset="0"/>
         <m:ParentFolderId>
            <t:AddressListId Id="xxxxx"/>
         </m:ParentFolderId>
      </m:FindPeople>
   </soap:Body>
</soap:Envelope>


干杯

Glen

Cheers
Glen


这篇关于使用FindPeople时无法获取其他属性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆