Office.InternetHeaders interface

对象 InternetHeaders 表示在邮件项离开 Exchange 并转换为 MIME 邮件后保留的自定义 Internet 标头。

Internet 标头按项存储为字符串键值对。

注意:此对象用于设置和获取邮件项上的自定义标头。 若要了解详细信息,请参阅在 Outlook 外接程序中获取和设置邮件的 Internet 标头

注解

[ API set: Mailbox 1.8 ]

最低权限级别读取项

适用的 Outlook 模式:Compose

重要提示:从版本 4.2405.0 开始,Android 版 Outlook 和 iOS 上支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

建议的做法

目前,Internet 标头是用户邮箱上的有限资源。 当配额用尽时,你无法在该邮箱上创建任何其他 Internet 标头,这可能会导致依赖此标头的客户端出现意外行为。

在外接程序中创建 Internet 标头时,请遵循以下准则。

  • 创建所需的最小标头数。 标头配额基于应用于消息的标头的总大小。 在 Exchange Online 中,标头限制上限为 256 KB,而在 Exchange 本地环境中,该限制由组织的管理员确定。 有关标头限制的详细信息,请参阅Exchange Online消息限制Exchange Server消息限制

  • 命名标头,以便稍后可以重用和更新其值。 因此,请避免以可变方式命名标头, (例如,基于用户输入、时间戳等 ) 。

方法

getAsync(names, options, callback)

给定 Internet 标头名称数组,此方法返回包含这些 Internet 标头及其值的记录。 如果外接程序请求的标头不可用,则结果中不会返回该标头。

注意:此方法旨在返回使用 setAsync 方法设置的自定义标头的值。

getAsync(names, callback)

给定 Internet 标头名称数组,此方法返回包含这些 Internet 标头及其值的记录。 如果外接程序请求的标头不可用,则结果中不会返回该标头。

注意:此方法旨在返回使用 setAsync 方法设置的自定义标头的值。

removeAsync(names, options, callback)

给定 Internet 标头名称数组,此方法从 Internet 标头集合中删除指定的标头。

注意:此方法旨在删除使用 setAsync 方法设置的自定义标头。

removeAsync(names, callback)

给定 Internet 标头名称数组,此方法从 Internet 标头集合中删除指定的标头。

注意:此方法旨在删除使用 setAsync 方法设置的自定义标头。

setAsync(headers, options, callback)

将指定的 Internet 标头设置为指定的值。

如果指定的标头尚不存在,则 setAsync 方法将创建新的标头;否则,现有值将替换为新值。

注意:此方法用于设置自定义标头的值。

setAsync(headers, callback)

将指定的 Internet 标头设置为指定的值。

如果指定的标头尚不存在,则 setAsync 方法将创建新的标头;否则,现有值将替换为新值。

注意:此方法用于设置自定义标头的值。

方法详细信息

getAsync(names, options, callback)

给定 Internet 标头名称数组,此方法返回包含这些 Internet 标头及其值的记录。 如果外接程序请求的标头不可用,则结果中不会返回该标头。

注意:此方法旨在返回使用 setAsync 方法设置的自定义标头的值。

getAsync(names: string[], options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<Record<string, string>>) => void): void;

参数

names

string[]

要返回的 Internet 标头的名称。

options
Office.AsyncContextOptions

包含以下一个或多个属性的对象文本:- asyncContext:开发人员可以在回调函数中提供他们想要访问的任何对象。

callback

(asyncResult: Office.AsyncResult<Record<string, string>>) => void

方法完成后,使用 类型的Office.AsyncResult单个参数 asyncResult调用在 参数中callback传递的函数。 Internet 标头的字符串键值对在 属性中 asyncResult.value 返回。 在 属性中 asyncResult.error 提供了遇到的任何错误。

返回

void

注解

[ API set: Mailbox 1.8 ]

最低权限级别读取项

适用的 Outlook 模式:Compose

重要提示:从版本 4.2405.0 开始,Android 版 Outlook 和 iOS 上支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/70-mime-headers/manage-custom-internet-headers-message-compose.yaml

Office.context.mailbox.item.internetHeaders.getAsync(
  ["preferred-fruit", "preferred-vegetable", "best-vegetable", "nonexistent-header"],
  function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
      console.log("Selected headers: " + JSON.stringify(asyncResult.value));
    } else {
      console.log("Error getting selected headers: " + JSON.stringify(asyncResult.error));
    }
  }
);

getAsync(names, callback)

给定 Internet 标头名称数组,此方法返回包含这些 Internet 标头及其值的记录。 如果外接程序请求的标头不可用,则结果中不会返回该标头。

注意:此方法旨在返回使用 setAsync 方法设置的自定义标头的值。

getAsync(names: string[], callback: (asyncResult: Office.AsyncResult<Record<string, string>>) => void): void;

参数

names

string[]

要返回的 Internet 标头的名称。

callback

(asyncResult: Office.AsyncResult<Record<string, string>>) => void

方法完成后,使用 类型的Office.AsyncResult单个参数 asyncResult调用在 参数中callback传递的函数。 Internet 标头的字符串键值对在 属性中 asyncResult.value 返回。 在 属性中 asyncResult.error 提供了遇到的任何错误。

返回

void

注解

[ API set: Mailbox 1.8 ]

最低权限级别读取项

适用的 Outlook 模式:Compose

重要提示:从版本 4.2405.0 开始,Android 版 Outlook 和 iOS 上支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

removeAsync(names, options, callback)

给定 Internet 标头名称数组,此方法从 Internet 标头集合中删除指定的标头。

注意:此方法旨在删除使用 setAsync 方法设置的自定义标头。

removeAsync(names: string[], options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

参数

names

string[]

要删除的 Internet 标头的名称。

options
Office.AsyncContextOptions

包含以下一个或多个属性的对象文本:- asyncContext:开发人员可以在回调函数中提供他们想要访问的任何对象。

callback

(asyncResult: Office.AsyncResult<void>) => void

可选。 方法完成后,使用 类型的Office.AsyncResult单个参数 asyncResult调用在 参数中callback传递的函数。 在 属性中 asyncResult.error 提供了遇到的任何错误。

返回

void

注解

[ API set: Mailbox 1.8 ]

最低权限级别读/写项

适用的 Outlook 模式:Compose

重要说明

  • 从版本 4.2405.0 开始,Android 版和 iOS 支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

  • 当前 removeAsync 使用 loadItemByIdAsync 方法加载的消息不支持 方法。 有关详细信息,请参阅 在多条消息上激活 Outlook 加载项。

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/70-mime-headers/manage-custom-internet-headers-message-compose.yaml

Office.context.mailbox.item.internetHeaders.removeAsync(
  ["best-vegetable", "nonexistent-header"],
  function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
      console.log("Successfully removed selected headers");
    } else {
      console.log("Error removing selected headers: " + JSON.stringify(asyncResult.error));
    }
  }
);

removeAsync(names, callback)

给定 Internet 标头名称数组,此方法从 Internet 标头集合中删除指定的标头。

注意:此方法旨在删除使用 setAsync 方法设置的自定义标头。

removeAsync(names: string[], callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

参数

names

string[]

要删除的 Internet 标头的名称。

callback

(asyncResult: Office.AsyncResult<void>) => void

可选。 方法完成后,使用 类型的Office.AsyncResult单个参数 asyncResult调用在 参数中callback传递的函数。 在 属性中 asyncResult.error 提供了遇到的任何错误。

返回

void

注解

[ API set: Mailbox 1.8 ]

最低权限级别读/写项

适用的 Outlook 模式:Compose

重要说明

  • 从版本 4.2405.0 开始,Android 版和 iOS 支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

  • 当前 removeAsync 使用 loadItemByIdAsync 方法加载的消息不支持 方法。 有关详细信息,请参阅 在多条消息上激活 Outlook 加载项。

setAsync(headers, options, callback)

将指定的 Internet 标头设置为指定的值。

如果指定的标头尚不存在,则 setAsync 方法将创建新的标头;否则,现有值将替换为新值。

注意:此方法用于设置自定义标头的值。

setAsync(headers: Record<string, string>, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

参数

headers

Record<string, string>

要设置的标头的名称和相应值。 这应该是一个记录对象,其键是 Internet 标头名称,值是相应的标头值字符串。

options
Office.AsyncContextOptions

包含以下一个或多个属性的对象文本:- asyncContext:开发人员可以在回调函数中提供他们想要访问的任何对象。

callback

(asyncResult: Office.AsyncResult<void>) => void

可选。 方法完成后,使用 类型的Office.AsyncResult单个参数 asyncResult调用在 参数中callback传递的函数。 在 属性中 asyncResult.error 提供了遇到的任何错误。

返回

void

注解

[ API set: Mailbox 1.8 ]

最低权限级别读/写项

适用的 Outlook 模式:Compose

重要说明

  • 从版本 4.2405.0 开始,Android 版和 iOS 支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

  • 标头配额基于应用于消息的标头的总大小。 在 Exchange Online 中,标头限制上限为 256 KB,而在 Exchange 本地环境中,该限制由组织的管理员确定。 有关标头限制的详细信息,请参阅Exchange Online消息限制Exchange Server消息限制

  • 当前 setAsync 使用 loadItemByIdAsync 方法加载的消息不支持 方法。 有关详细信息,请参阅 在多条消息上激活 Outlook 加载项。

示例

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/70-mime-headers/manage-custom-internet-headers-message-compose.yaml

Office.context.mailbox.item.internetHeaders.setAsync(
  { "preferred-fruit": "orange", "preferred-vegetable": "broccoli", "best-vegetable": "spinach" },
  function (asyncResult) {
    if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
      console.log("Successfully set headers");
    } else {
      console.log("Error setting headers: " + JSON.stringify(asyncResult.error));
    }
  }

);

setAsync(headers, callback)

将指定的 Internet 标头设置为指定的值。

如果指定的标头尚不存在,则 setAsync 方法将创建新的标头;否则,现有值将替换为新值。

注意:此方法用于设置自定义标头的值。

setAsync(headers: Record<string, string>, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;

参数

headers

Record<string, string>

要设置的标头的名称和相应值。 这应该是一个记录对象,其键是 Internet 标头名称,值是相应的标头值字符串。

callback

(asyncResult: Office.AsyncResult<void>) => void

可选。 方法完成后,使用 类型的Office.AsyncResult单个参数 asyncResult调用在 参数中callback传递的函数。 在 属性中 asyncResult.error 提供了遇到的任何错误。

返回

void

注解

[ API set: Mailbox 1.8 ]

最低权限级别读/写项

适用的 Outlook 模式:Compose

重要说明

  • 从版本 4.2405.0 开始,Android 版和 iOS 支持 Internet 标头 API。 若要详细了解移动设备上的 Outlook 支持的功能,请参阅移动设备上的 Outlook 支持的 Outlook JavaScript API

  • 标头配额基于应用于消息的标头的总大小。 在 Exchange Online 中,标头限制上限为 256 KB,而在 Exchange 本地环境中,该限制由组织的管理员确定。 有关标头限制的详细信息,请参阅Exchange Online消息限制Exchange Server消息限制

  • 当前 setAsync 使用 loadItemByIdAsync 方法加载的消息不支持 方法。 有关详细信息,请参阅 在多条消息上激活 Outlook 加载项。