在阅读或撰写窗体中获取和设置 Outlook 项目数据
从 Office 加载项清单架构的版本 1.1 开始,Outlook 可以在用户查看或撰写项目时激活加载项。 根据加载项是在阅读窗体中激活还是在撰写窗体中激活,项目为加载项提供的属性也有所不同。
例如,仅针对已发送项目(随后在阅读窗体中查看项目)定义 dateTimeCreated 和 dateTimeModified 属性,但(在撰写窗体中)创建项目时不定义这两个属性。 另一个示例是 bcc 属性,它仅在(撰写窗体中)撰写邮件时具有意义,并且用户无法在阅读窗体中访问此属性。
撰写和阅读窗体中可用的项目属性
表 1 显示了 Office JavaScript API 中的项级属性,这些属性在邮件加载项 (读取和撰写) 模式中均可用。通常,读取窗体中可用的属性是只读的,撰写窗体中可用的属性是可读/写的,但 itemId、 conversationId 和 itemType 属性除外,无论这些属性始终是只读的。
对于撰写窗体中的其余项目级属性,由于加载项和用户可以同时读取或写入同一属性,在撰写模式下获取或设置这些属性的方法都是异步的,因此这些属性在撰写窗体中和阅读窗体中返回的对象类型可能也有所不同。 有关在撰写模式下使用异步方法获取或设置项目级属性的详细信息,请参阅在 Outlook 的撰写窗体中获取和设置项目数据。
表 1. 撰写和阅读窗体中可用的项目属性
项目类型 | 属性 | 阅读窗体中的属性类型 | 撰写窗体中的属性类型 |
---|---|---|---|
约会和邮件 | dateTimeCreated | JavaScript Date 对象 | 属性不可用 |
约会和邮件 | dateTimeModified | JavaScript Date 对象 | 属性不可用 |
约会和邮件 | itemClass | 字符串 | 属性不可用 |
约会和邮件 | itemId | 字符串 | 属性不可用 |
约会和邮件 | itemType | ItemType 枚举中的字符串 | ItemType 枚举中的字符串 (只读) |
约会和邮件 | attachments | AttachmentDetails | 属性不可用 |
约会和邮件 | body | Body | Body |
约会和邮件 | normalizedSubject | 字符串 | 属性不可用 |
约会和邮件 | subject | 字符串 | Subject |
约会 | end | JavaScript Date 对象 | Time |
约会 | location | 字符串 | 位置 |
约会 | optionalAttendees | EmailAddressDetails | Recipients |
约会 | organizer | EmailAddressDetails | Organizer |
约会 | requiredAttendees | EmailAddressDetails | Recipients |
约会 | start | JavaScript Date 对象 | Time |
邮件 | bcc | 属性不可用 | 收件人 |
邮件 | cc | EmailAddressDetails | 收件人 |
邮件 | conversationId | 字符串 | 字符串 (只读) |
邮件 | from | EmailAddressDetails | From |
邮件 | internetMessageId | 整数 | 属性不可用 |
邮件 | sender | EmailAddressDetails | 属性不可用 |
邮件 | to | EmailAddressDetails | 收件人 |
从阅读加载项使用 Exchange Server 回调令牌
如果 Outlook 加载项在读取表单中激活,则可以获取 Exchange 回调令牌。 该令牌可用于服务器端代码,以便通过 Exchange Web 服务 (EWS) 访问完整项目。
通过在外接程序清单中指定 读取项目权限 ,可以使用 mailbox.getCallbackTokenAsync 方法获取 Exchange 回调令牌,使用 mailbox.ewsUrl 属性获取用户邮箱的 EWS 终结点的 URL,使用 item.itemId 获取所选项目的 EWS ID。 然后,可以将回调令牌、EWS 终结点 URL 和 EWS 项目 ID 传递到服务器端代码,以访问 GetItem 操作,从而获取项目的更多属性。
从阅读或撰写加载项访问 EWS
另外,还可以使用 mailbox.makeEwsRequestAsync 方法直接从加载项访问 Exchange Web 服务 (EWS) 操作 GetItem 和 UpdateItem。 可以使用这两个操作获取并设置指定项目的多个属性。 只要在外接程序清单中指定读 /写邮箱 权限,无论加载项是在阅读窗体还是撰写窗体中激活加载项,都可以使用此方法。 有关 读/写邮箱 权限的详细信息,请参阅 了解 Outlook 外接程序权限
有关使用 makeEwsRequestAsync 访问 EWS 操作的详细信息,请参阅从 Outlook 加载项调用 Web 服务。
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈