生成传出 AS2 消息

AS2EDISend 和 AS2Send 发送管道生成出站消息,如下所示。 每个管道使用“ 协议属性 ”对话框的单向协议选项卡中的属性来生成传出 AS2 消息。

确定协议、目标和 MessageID

AS2 发送管道确定发送 AS2 消息时要使用的协议和目标,如下所示:

  • 为了确定处理传出消息时使用的协议,AS2 编码器尝试将消息中的 AS2-To 属性和参与方业务配置文件的 AS2Identity 进行匹配,或者将订阅消息的发送端口和与协议关联的发送端口进行匹配。 有关此过程的详细信息,请参阅 传出 AS2 消息的协议解析

  • 若要确定消息的目标,动态发送端口中的发送管道使用 OutboundTransportLocation 属性,后端应用程序必须将其写入或提升到上下文中,动态发送端口才能正常工作。 静态发送管道中的发送管道将通过 AS2 协议属性中的 AS2-From 属性和业务配置文件属性的标识来确定目标。

  • AS2 编码器需要设置传出 AS2 消息的 MessageId 标头。 发送管道根据 EdiIntAS.MessageId 上下文属性或 HTTP.UserHttpHeaders 上下文属性确定 MessageId。 如果同时设置了这两个上下文属性,编码器将使用上下文属性中的 HTTP.UserHttpHeaders 值。 如果两者均未设置,则发送管道将自动生成 MessageID 的值。

传出消息处理

AS2 发送管道在处理传出 AS2 消息时使用的步骤如下:

  • 以本机格式创建消息的副本,并将该副本存储在不可否认数据库中(如果在协议属性中启用 AS2 消息的不可否认)。

  • AS2 编码器将 HTTP (和 AS2) 标头生成到上下文属性中 HTTP.UserHttpHeaders 。 有关此过程的详细信息,请参阅 通过 AS2 发送 EDI 消息的发送端处理

  • HTTP.UserHttpHeaders写入上下文。

  • 压缩传出消息(如果已启用)。

  • 执行 MIME 处理,包括加密消息 (是否在 “邮件应加密 ”协议属性) 中启用,以及应用数字签名 ((如果启用), 应) “邮件签名 ”协议属性。 AS2Send 管道使用 SHA1 或 MD5 根据协议设置应用签名。

  • 如果已在协议属性中启用传输文件名,则创建一个包含指定值的 Content-Disposition MIME 标头。

  • 在协议属性中为 出站编码 AS2 消息启用的 NRR 中,以线路格式创建加密消息) (的副本,并将副本存储在不可否认数据库中。

  • 如果需要 MDN,则计算 MIC 值并将其存储在数据存储中。

  • 将消息传递到 HTTP 适配器,该适配器将 UserHTTPHeaders 上下文属性中的标头写入传出 AS2 消息。

  • 如果需要可靠的消息传送,则重新发送消息,直到收到 MDN。

另请参阅

BizTalk Server 如何发送 AS2 消息
AS2 发送组件