通过该传输传递的消息为提供平台独立性的 XML 格式。定义特定操作和错误情况(SOAP 故障)的 XML 内容根据 SOAP 标准进行定义。由于传递不受保证,因此应用程序必须在系统或网络发生故障时提供恢复功能。
消息中包含了合适其类型的组件:
- 命令字符串
- 请求消息,包含后跟 URL 的命令 POST。该命令字符串以 HTTP/1.0 结尾。
- 状态行
- 响应消息,包含以 HTTP/1.0 开头的状态行,并以代码或文本表明请求成功与否;例如,200 OK,404 Not Found,500 Server Error。
- 头
- Web service 协议所使用的头是 HTTP 头,它的组成形式为:名称,后跟字符冒号和(可选)空格,再跟头的值(内容)。每个头后面的字符为 <CR><LF>。最后一个头后跟 <CR><LF><CR><LF>,这会创建一行空行。该行后的数据解释为消息体数据。Web service 头中对头进行了描述。
- 主体
- 消息体是在消息中位于头后面的数据(即,在字符 <CR><LF><CR><LF> 后)。对于 HTTPInput 或 HTTPRequest 节点接收的入站消息,该数据通常根据节点中的消息属性设置进行解析。对于出站消息,数据则通常根据“属性”文件夹中的消息属性设置进行解析,该文件夹由把来自消息树的消息解析到位流的 HTTPReply 或 HTTPRequest 节点接收。
在多数情况下,消息体是 XML。但如果配置了接收节点来处理其他格式,且有相应的解析器可用,则入站消息可包含该格式。出站消息可包含消息所发送到的 Web service 所接受的任何格式的主体。
由组件而非 Web service 生成的错误(如,404 Not Found)可能会导致产生 HTML 格式的消息。
当 HTTPInput 节点接收了输入请求或 HTTPRequest 节点接收了 Web service 的响应时,包含头和主体的位流会在消息树中进行解析并得以表示。在 HTTPReply 节点将应答发送到客户机以及 HTTPRequest 节点将请求发送到 Web service 时,消息树中相应部分的解析器会创建位流。有关这些操作的更多详细信息,请参阅单个节点的描述。