美文网首页
第四十一章 使用 二进制 SOAP 格式

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

作者: Cache技术分享 | 来源:发表于2024-06-27 08:06 被阅读0次

    第四十一章 使用 二进制 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

    相关文章

      网友评论

          本文标题:第四十一章 使用 二进制 SOAP 格式

          本文链接:https://www.haomeiwen.com/subject/ontecjtx.html