映射活动的输入

在此任务中,您将包含 MIME 头和多个部分(包含附件)的 XML 变量分别映射到编写 MIME 活动的 mimeheader 和 parts 输入参数。 必须将这些变量映射到 parts 输入参数 - 此输入参数是必需的。mimeheader 输入参数是可选的。 如果未映射到 mimeheader 输入参数或定义其元素的缺省值,那么会在下表中列出缺省值。

关于此任务

如果在映射输入窗格的至活动窗格中未列出 mimeheader 输入参数,请从工具栏菜单中选择映射 > 显示可选参数,或在至活动窗格中右键单击并选择显示可选参数选项。 如果映射 > 显示可选参数选项在工具栏菜单中不可选,请单击映射输入窗格中的元素以激活此选项。

下表定义了 mimeheader 输入参数中的元素:
表 1.
mimeheader 输入参数的子元素 缺省值
mimeVersion 赋值为标准 MIME 版本 1.0。 生成的 MIME 头等于以下设置:MIME-Version: 1.0
contentType 生成的 MIME 头中 Content-Type 设置的值等于以下设置:Content-Type: multipart/mixed
contentType/attribute/name contentType/attribute/value attribute 元素包含名称/值对形式的属性集。可以使用 boundary 属性元素指定附件之间的边界。如果未指定 boundary 属性,那么会生成缺省值。
contentTransferEncoding 生成的 MIME 头中 Content-Transfer-Encoding 的值等于以下设置:Content-Transfer-Encoding: 7-bit。注意:在此元素中为主 MIME 头指定的 Content-Transfer-Encoding 不能比实体 MIME 头的 Content-Transfer-Encoding 具有更多限制。例如,如果指定主 MIME 头的 Content-Transfer-Encoding 为 7-bit,但是实体 MIME 头的 Content-Transfer-Encoding 为 8-bit,那么主 MIME 头的 Content-Transfer-Encoding 会更改为 8-bit。
如果不指定 parts 输入参数的某些子元素的值,那么在下表中会描述缺省值。
表 2.
parts 输入参数的子元素 缺省值
mimeVersion 赋值为标准 MIME 版本 1.0。 生成的 MIME 头包含以下设置:MIME-Version: 1.0
contentType 生成的 MIME 头中 Content-Type 的值包含以下设置:Content-Type: text/plain; charset=US-ASCII
contentTransferEncoding 生成的 MIME 头中 Content-Transfer-Encoding 的值取决于 Content-Type 设置。如果 Content-Type 等于 multipart,那么生成的 MIME 头会包含以下设置:Content-Transfer-Encoding: 7-bit。如果 Content-Type 等于 text 并且 charset 等于 not-us-ascii(其中 not-us-ascii 是除 US-ASCII 以外的任何类型),那么生成的 MIME 头会包含以下设置:Content-Transfer-Encoding: quoted-printable。如果 Content-Type 等于 non-text,那么生成的 MIME 头会包含以下设置:Content-Transfer-Encoding: base64。注意:如果 Content-Disposition 等于 attachment,那么不会将实体部分视为文本。
parts 输入参数可以包含一个或多个部分。各部分包含描述关联部分主体的各种属性的 MIME 头。个别 MIME 部分的序列化方式取决于 mime 头中以下参数的赋值:
  • Content-Type 头
  • Content-Type 头中的 Charset 属性
  • Content-Transfer-Encoding

该部分主体的序列化方式取决于 Content-Transfer-Encoding 和 Content-Type 的设置:

Content-Type 等于“text”:
  • 如果 Content-Type 为“text”并且 Content-Transfer-Encoding 为“7-bit”/“8-bit”或“binary”,那么该部分主体会从 UTF8 字符集转换为所指定的字符集并复制到 body 输出参数中。
  • 如果 Content-Type 为“text”并且 Content-Transfer-Encoding 为“quoted-printable”,那么该部分主体会从 UTF8 字符集转换为所指定的字符集,进行 quoted-printable 编码并复制到 body 输出参数中。
  • 如果 Content-Type 为“text”并且 Content-Transfer-Encoding 为“base64”,那么该部分主体会从 UTF8 字符集转换为所指定的字符集,进行 base64 编码并复制到 body 输出参数中。

如果未在 MIME 头部分中显式指定,那么字符集缺省为“UTF8”。仅当 Content-Disposition 等于“attachment”并且 Content-Type 等于“text”时,此缺省行为才会出现异常。在此情况下,不会将该部分视为文本,因为无法获知数据的字符集。除此情况外,Content-Transfer-Encoding 会设置为“binary”。

Content-Type 不等于“text”:

  • 如果 Content-Type 不等于“text”并且 Content-Transfer-Encoding 为“7bit”/“8bit”或“binary”,那么该部分主体会按原样复制到 body 输出参数中。
  • 如果 Content-Type 不等于“text”并且 Content-Transfer-Encoding 为“quoted-printable”,那么该部分主体会进行 base64 解码,quoted-printable 编码并复制到 body 输出参数中。
  • 如果 Content-Type 不等于“text”并且 Content-Transfer-Encoding 为“base64”,那么该部分主体会按原样(base64 数据)复制到 body 输出参数中。

有关映射的一般指示信息,请参阅创建单机映射