soap消息如何传送附件

本文介绍了在SOAP接口中传输文件附件的方法,重点讲述了使用MTOM(Message Transmission Optimization Mechanism)的方式。通过在WSDL中定义消息结构,使content字段作为DataHandler类型处理,服务端和客户端进行配置以支持MTOM,从而高效地传送大型二进制数据。
摘要由CSDN通过智能技术生成

soap消息如何传送附件


项目中使用了soap接口实现远程通讯,有文件传送的需求。常见的解决方案如下:

  • 文件内容读出后,使用base64编码传输
  • 通过MTOM方式,以消息附件发送
  • 如果文件内容过大,可以先通过soap消息传递文件信息,服务端再使用sftp等文件协议主动下载(此方式成本较高,要求客户端提供文件服务)

本文介绍一下第二种方式的处理。
MTOM(Message Transmission Optimization Mechanism),消息传输优化机制,允许将消息中包含的大型数据元素外部化,并将其作为无任何特殊编码的二进制数据随消息一起传送。


*消息定义*

在编写wsdl时,消息结构字段按照如下方式定义:

<element name="Attachment">
    <complexType>
        <sequence>
            <element name="filename" type="xsd:string"/>
            <element name="content" type="xsd:base64Binary"/>
        </sequence>
    </complexType>
</element>

为了将其中的content字段转换成附件形式,需要对将该字段按照如下方式定义:

<element n
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值