第三十一章 使用带附件的 SOAP

第三十一章 使用带附件的 SOAP

IRIS 数据平台 Web 客户端和 Web 服务中,可以使用 SOAP 支持向 SOAP 消息添加和使用附件,而不是使用 IRIS MTOM 支持,如上一主题中所述。

此方法比使用 MTOM 需要做更多的工作,因为代码必须直接管理用作附件的 MIME 部分。

发送附件

当使用 IRIS 对带附件的 SOAP 标准的支持时,可以使用以下流程发送附件:

  1. 创建附件。要创建附件:

a. 使用流对象来表示附件数据。使用的类取决于获取流数据所需的确切接口。例如,可以使用 %Library.FileCharacterStream将文件内容读入流中。

b. 创建一个 MIME 部分,它是中 %Net.MIMEPart 的一个实例。

c. 对于 MIME 部分:

  • Body 属性设置为等于流对象。或者设置 Parts 属性,该属性必须中 %Net.MIMEPart实例的列表。
  • 调用 SetHeader() 方法来设置 MIME 部分的 Content-Transfer-Encoding 标头。请确保根据要发送的数据类型正确设置此标头。
  1. 将附件添加到 Web 服务或 Web 客户端。要添加给定附件,请将 MIME 部分插入到相应的属性中,如下所示:
  • 如果从 Web 客户端发送附件,请更新 Web 客户端的附件属性。
  • 如果从 Web 服务发送附件,请更新 Web 服务的 ResponseAttachments 属性。

每个属性都是一个具有常见列表接口的列表(例如,SetAt()Count()GetAt() 方法)。

  1. 更新 Web 客户端或 Web 服务的相应属性来描述附件内容:
  • ContentId

  • ContentLocation

使用附件

Web 服务或 Web 客户端收到带有附件的 SOAP 消息(如带附件的 SOAP 规范所指定)时,会发生以下情况:

  • 将附件插入到适当的属性中:

    • 对于 Web 服务,入站附件放置在附件属性中。
    • 对于 Web 客户端,入站附件放在 ResponseAttachments 属性中。

    这些属性中的每一个都是具有常见列表接口的列表(例如,SetAt()Count()GetAt() 方法)。每个列表元素都是 %Net.MIMEPart 的实例。请注意,MIME 部分可以依次包含其他 MIME 部分。代码负责确定附件的结构和内容。

  • ContentIDContentLocation 属性已更新,以反映入站 SOAP 消息的 Content-IDContent-Location标头。

Web 服务或 Web 客户端可以访问这些属性,从而访问附件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yaoxin521123

谢谢您的支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值