【问题标题】:Discard hidden folders with Outlook REST Api使用 Outlook REST Api 丢弃隐藏文件夹
【发布时间】:2016-07-12 17:27:40
【问题描述】:

使用Outlook REST API(beta 端点)检索文件夹列表时

https://outlook.office365.com/api/beta/me/MailFolders

我得到了完整的文件夹列表。但我也得到了一些隐藏/忽略的文件夹,这些文件夹没有显示在普通的 Outlook 客户端中。我也想忽略这些文件夹。

我尝试使用 SingleExtendedProperty 和 PigTagAttributeHidden 伪造请求

https://outlook.office365.com/api/beta/me/MailFolders?$select=Id,DisplayName,ParentFolderId,ChildFolderCount,UnreadItemCount,TotalItemCount,SingleValueExtendedProperties&$expand=SingleValueExtendedProperties($filter=(PropertyId eq 'Boolean 0x10F4'))

在结果中,即使对于这些“被忽略”的文件夹,此属性也始终标记为 false。

有没有其他方法或解决方法来实现这一点?

【问题讨论】:

  • 当你说隐藏/忽略时,你到底是什么意思?它们是如何隐藏的?
  • 我在 Office365 上。我有一个文件夹同步问题,其中包含我没有创建的三个子文件夹(冲突、本地故障和服务器故障)。而且我还有三个隐藏文件夹,其中包含我开发的 Web 加载项的名称。我的同事也有一些由他测试的一些 VSTO 加载项创建的不可见文件夹。所以我猜这是一个隐藏的属性,本来可以使用social.msdn.microsoft.com/Forums/vstudio/en-US/…
  • 这些隐藏文件夹与您的加载项名称:您知道它们在文件夹层次结构中的位置吗?
  • 我在 Twitter 上给你发了一条私信。我想从您那里收集更多离线数据。我当然会在这里发布最终答案:)

标签: office365api outlook-restapi office365-restapi


【解决方案1】:

我浏览了报告的文件夹,没有一个是隐藏的。基本上它们分为两类:

  • Sync IssuesConflicts 等系统文件夹。这些不是隐藏的,但 OWA 不会在其文件夹视图中显示它们。 OWA 专门处理这些。对于想要特别处理这些而不显示它们的 REST 应用程序的建议是检查 WellKnownName 属性。所有这些都具有该属性的恒定值,因此可以选择性地过滤它们。
  • 加载项文件夹。这些是由module extension add-in 创建的。它们实际上位于以下文件夹结构中:

    /WebExtAddIns (Hidden)
        |__/{GUID id of addin} (Hidden)
            |__/{Name of module extension tab} (Visible)
    

    REST API 包含 {Name of module extension tab} 文件夹,因为它被标记为可见,即使它的父文件夹是隐藏的。我已将此情况报告给我们的开发人员,我们正在研究改进这种情况。同时,您可以通过确保ParentFolderId 与文件夹结果中另一个文件夹的IdInbox 文件夹的ParentFolderId 匹配来过滤掉这些。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-06-12
    • 2010-11-25
    • 2017-09-06
    • 2020-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多