第四十一章 使用 二进制 SOAP 格式

第四十一章 使用 二进制 SOAP 格式

数据平台 SOAP 支持提供了可选的专有二进制 SOAP 格式,当发送和接收大型 SOAP 消息并希望最小化消息大小时,该格式非常有用。

Web 服务可以接收 二进制 SOAP 格式或常规 SOAP 格式的 SOAP 请求。无需任何参数即可启用此行为。 Web 客户端仅在配置为二进制 SOAP 格式时才使用二进制 SOAP 格式。

注意:如果 Web 服务或 Web 客户端使用此专有二进制 SOAP 格式,则无法将 WS-SecurityWS-Policy 功能与此 Web 服务或客户端一起使用。请参阅保护 Web 服务。

介绍

IRIS 二进制 SOAP 通过 HTTP 消息传输,如下所示:

  • 该消息使用POST方法。
  • Content-Type 始终是“application/octet-stream”
  • 主体是使用专有协议的对象的二进制表示。
  • 二进制 SOAP 请求包含以下形式的 HTTP ISCSoap 标头:
ISCSoap: NAMESPACE/Package.Class.Method
  • 支持 SOAP 会话。会话信息通过使用常规 Web 会话 cookie 来维护。但是,不支持 SOAP Web 客户端和 Web 服务的 SessionCookie 属性,因为二进制 SOAP 不使用 CSPCHD 专有 SOAP 标头。

以下示例显示了二进制 SOAP 请求:

POST /csp/mysamples/GSOP.WebServiceBinary.cls HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; InterSystems IRIS;)
Host: devsys:8080
Connection: Close
ISCSoap: https://www.myapp.org/GSOAP.WebServiceBinary.Divide
Content-Type: application/octet-stream
Content-Length: 90

00085hdBinaryClient.MyAppSoap.Dividearg1arg2t

请注意,只有 SOAP 信封及其内容会受到影响。HTTP 标头不受影响。

扩展 Web 服务的 WSDL

任何 Web 服务都可以接收 二进制 SOAP 格式或常规 SOAP 格式的 SOAP 请求。如果 Web 服务收到二进制请求,则会发送二进制响应。否则,它会发送常规响应。无需任何参数即可启用此行为。

可以扩展 Web 服务的 WSDL,以便:

  1. WSDL 公开声明,该 Web 服务除了支持通常的 SOAP 格式外,还支持 IRIS 二进制 SOAP 格式。
  2. WSDL 包含有关使用 IRIS 二进制 SOAP 格式的信息。

如果需要,这允许任何 IRIS 网络客户端正确地以这种格式发送消息。

要以这种方式扩展 IRIS Web 服务的 WSDL,请将 Web 服务的 SOAPBINARY 参数设置为 1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

yaoxin521123

谢谢您的支持!

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

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

打赏作者

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

抵扣说明:

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

余额充值