具体介绍XML与Web服务和SOA有何关联?

尽管可以使用许多技术来实现面向服务体系结构(SOA),不过最常用的还是使用 Web 服务,这意味着要使用 XML。SOAP 和 REST 是实现 Web 服务最流行的两种方法,这两者都基于 XML。 一个例子 比如说,通过将这个 SOAP 文档作为 Web 请求发送,可以向 Google Web 服务提
尽管可以使用许多技术来实现面向服务体系结构(SOA),不过最常用的还是使用 Web 服务,这意味着要使用 XML。SOAP 和 REST 是实现 Web 服务最流行的两种方法,这两者都基于 XML。
一个例子
比如说,通过将这个 SOAP 文档作为 Web 请求发送,可以向 Google Web 服务提出请求。(如清单 2 所示)
清单 2. 通过发送 SOAP 文档向 Google Web 服务提出请求

<?xml version='1.0' encoding='UTF-8'?>

<SOAP-ENV:Envelope xmlns:SOAP-ENV=

     "http://schemas.xmlsoap.org/soap/envelope/" 

   xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" 

   xmlns:xsd="http://www.w3.org/1999/XMLSchema">

  <SOAP-ENV:Body>

    <ns1:doGoogleSearch xmlns:ns1="urn:GoogleSearch" 

         SOAP-ENV:encodingStyle=

                  "http://schemas.xmlsoap.org/soap/encoding/">

      <key xsi:type="xsd:string">00000000000000000000000000000000</key>

      <q xsi:type="xsd:string">death star trash compactor</q>

      <start xsi:type="xsd:int">0</start>

      <maxResults xsi:type="xsd:int">10</maxResults>

      <filter xsi:type="xsd:boolean">true</filter>

      <restrict xsi:type="xsd:string"></restrict>

      <safeSearch xsi:type="xsd:boolean">false</safeSearch>

      <lr xsi:type="xsd:string"></lr>

      <ie xsi:type="xsd:string">latin1</ie>

      <oe xsi:type="xsd:string">latin1</oe>

    </ns1:doGoogleSearch>

  </SOAP-ENV:Body>

</SOAP-ENV:Envelope>

此处我们可以看到 SOAP 信封(envelope),它是 Web 服务引擎能够理解的标准格式。这个消息的内容(在本例中为 doGoogleSearch 元素)被认作是 有效载荷(payload),由即将被 Web 服务处理的信息所组成。

以上就是具体介绍XML与Web服务和SOA有何关联?的详细内容,更多请关注其它相关文章!