第六章 定义单向 Web 方法
通常,当 Web
客户端调用 Web
服务时,会返回 SOAP
消息,即使该方法没有返回类型并且在 数据平台中执行时不返回任何内容。
在极少数情况下,可能需要将 Web
方法定义为单向的。此类方法不得返回任何值,并且消息不需要 SOAP
响应。
注意:通常不应使用单向方法。请求-响应对更为常见、更受支持且更受期待 — 即使对于没有返回类型的方法也是如此。
要定义单向 Web
方法,请将该方法的返回类型定义为 %SOAP.OneWay
。WSDL
未定义此 Web
方法的输出,并且 Web
服务不返回 SOAP
消息。
向二进制数据添加换行符
可以使 Web
服务在新选项卡中为 %Binary
类型属性中为 %xsd.base64Binary
类型属性添加自动换行符。为此,请执行以下操作之一:
- 在
Web
服务类中将BASE64LINEBREAKS
参数设置为1
。 - 对于
Web
服务类实例,将Base64LineBreaks
属性设置为1
。此属性的值优先于BASE64LINEBREAKS
参数设置的值。
对于参数和属性,默认值为 0
;默认情况下, Web
服务不包括新选项卡中 %Binary
类型属性或中 %xsd.base64Binary
类型的属性的自动换行符。
向 SOAP
消息添加字节顺序标记
默认情况下,Web
客户端发送的消息不以 BOM
(字节顺序标记)开头。
通常不需要 BOM
,因为消息以 UTF-8
编码,不存在字节顺序问题。但是,在某些情况下,在 SOAP
消息中包含 BOM
是必要的或可取的;此 BOM
仅表示消息是 UTF-8
。
要将 BOM
添加到 Web
客户端发送的消息中,请设置客户端的 RequestMessageStart
属性。此属性必须等于要包含在消息开头的部分的逗号分隔列表。这些部分如下:
DCL
是 XML
声明:
<?xml version="1.0" encoding="UTF-8" ?>
-
BOM
是UTF-8 BOM
。 - 默认值为
“DCL”
。
实际上,RequestMessageStart
可以等于下列任意值:
-
"DCL"
-
"BOM"
-
"BOM,DCL"
网友评论