0

在示例肥皂 XML 请求消息中,我注意到有肥皂信封标记为

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Header>
...

可以删除这些标签吗?例如,将肥皂消息更改为,

<soapenv:Envelope>
<Header>
...

这是所有肥皂信息都必须具备的标准吗?

谢谢。

4

1 回答 1

2

需要soap消息,接收端可以使用命名空间来确定soap消息的版本。据我了解,您使用的命名空间表示此消息遵循Soap 1.1标准。如果您尝试使用Soap 1.2该消息中的功能,服务器很可能会感到困惑。

肥皂 1.1 标准的第 4.1.2 节

SOAP 没有定义基于主要和次要版本号的传统版本控制模型。SOAP 消息必须有一个与“http://schemas.xmlsoap.org/soap/envelope/”命名空间相关联的 Envelope 元素。如果 SOAP 应用程序接收到一条消息,其中 SOAP Envelope 元素与不同的命名空间相关联,则应用程序必须将此视为版本错误并丢弃该消息。如果消息是通过请求/响应协议(例如 HTTP)接收的,应用程序必须使用 SOAP“http://schemas.xmlsoap.org/soap/envelope/”命名空间以 SOAP VersionMismatch 错误代码消息(参见第 4.4 节)进行响应.

1.1 中的
肥皂信封 1.2中的肥皂信封

于 2012-08-23T15:28:43.477 回答