GetFolder 操作
GetFolder 操作从 Exchange 存储中获取文件夹。
GetFolder 请求示例
说明
下面的 GetFolder 请求示例演示如何获取文件夹标识符、显示名称、该文件夹中的项目计数、子文件夹的计数以及文件夹中的未读项目数。
代码
<?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">
<soap:Body>
<GetFolder xmlns="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types">
<FolderShape>
<t:BaseShape>Default</t:BaseShape>
</FolderShape>
<FolderIds>
<t:DistinguishedFolderId Id="inbox"/>
</FolderIds>
</GetFolder>
</soap:Body>
</soap:Envelope>
请求元素
此 GetFolder 请求包含以下元素:
有关可用于形成 GetFolder 请求的其他元素,请参阅架构。
注意
描述此元素的架构位于承载 Exchange Web Services 的 IIS 虚拟目录中。
GetFolder 响应示例
说明
以下简单对象访问协议 (SOAP) 正文示例显示了对 GetFolder 请求的成功响应。
注意
文件夹 ID 和更改密钥已缩短,以保持可读性。
代码
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="628" MinorBuildNumber="0"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<GetFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:GetFolderResponseMessage ResponseClass="Success">
<m:ResponseCode>NoError</m:ResponseCode>
<m:Folders>
<t:Folder>
<t:FolderId Id="AQApA=" ChangeKey="AQAAAB" />
<t:DisplayName>Inbox</t:DisplayName>
<t:TotalCount>2</t:TotalCount>
<t:ChildFolderCount>0</t:ChildFolderCount>
<t:UnreadCount>2</t:UnreadCount>
</t:Folder>
</m:Folders>
</m:GetFolderResponseMessage>
</m:ResponseMessages>
</GetFolderResponse>
</soap:Body>
</soap:Envelope>
响应元素
此 GetFolder 响应包含以下元素:
GetFolder 错误响应示例
说明
以下 SOAP 正文示例显示了由请求中不正确的 FolderId 引起的错误响应。
代码
<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<soap:Header>
<t:ServerVersionInfo MajorVersion="8" MinorVersion="0" MajorBuildNumber="628" MinorBuildNumber="0"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types" />
</soap:Header>
<soap:Body>
<GetFolderResponse xmlns:m="http://schemas.microsoft.com/exchange/services/2006/messages"
xmlns:t="http://schemas.microsoft.com/exchange/services/2006/types"
xmlns="http://schemas.microsoft.com/exchange/services/2006/messages">
<m:ResponseMessages>
<m:GetFolderResponseMessage ResponseClass="Error">
<m:MessageText>Id is malformed.</m:MessageText>
<m:ResponseCode>ErrorInvalidIdMalformed</m:ResponseCode>
<m:DescriptiveLinkKey>0</m:DescriptiveLinkKey>
<m:Folders />
</m:GetFolderResponseMessage>
</m:ResponseMessages>
</GetFolderResponse>
</soap:Body>
</soap:Envelope>
响应元素
此 GetFolder 错误响应包括以下元素:
版本差异
对于面向 Exchange Online、Exchange Online作为Office 365的一部分或从 Exchange 2013 开始的 Exchange 本地版本的应用程序,当 BaseShape 元素在 GetFolder 操作请求中具有 AllProperties 值时,不会返回文件夹权限。 若要检索文件夹权限,请将 PermissionSet (PermissionSetType) 元素添加到 GetFolder 请求中的 AdditionalProperties 元素。