加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

WebService的基本概念

发布时间:2020-12-17 02:05:07 所属栏目:安全 来源:网络整理
导读:? WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。 ??? 这种技术允许网络上的所有系统进行交互。随着技术的发展,一个Web服务可以包含额外的指定功能并且可以在多个B2B应用中协作通讯。 Web服务可以

? WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。

??? 这种技术允许网络上的所有系统进行交互。随着技术的发展,一个Web服务可以包含额外的指定功能并且可以在多个B2B应用中协作通讯。 Web服务可以理解请求中上下文的关系,并且在每一个特定的情况下产生动态的结果。这些服务会根据用户的身份,地点以及产生请求的原因来改变不同的处理,用以产生一个唯一的,定制的方案。这种协作机制对那些只对最终结果有兴趣的用户来说,是完全透明的。

??? UDDI

??? 在用户能够调用Web服务之前,必须确定这个服务内包含哪些商务方法,找到被调用的接口定义,还要在服务端来编制软件。所以,我们需要一种方法来发布我们的Web服务。 UDDI (Universal Description,Discovery,and Integration) 是一个主要针对Web服务供应商和使用者的新项目。UDDI 项目中的成员可以通过UDDI Business Registry (UBR) 来操作Web服务的调用,UBR是一个全球性的服务。 Web服务供应商可以在UBR中描述并且注册他们的服务。 用户可以在UBR中查找并定位那些他们需要的服务。 UDDI是一种根据描述文档来引导系统查找相应服务的机制。 UDDI包含标准的“白皮书”类型的商业查询方式, “黄皮书”类型的局部查找,以及 “绿皮书”类型的服务类型查找。 UDDI利用SOAP消息机制(标准的XML/HTTP)来发布,编辑,浏览以及查找注册信息。它采用XML格式来封装各种不同类型的数据,并且发送到注册中心或者由注册中心来返回需要的数据。

??? WSDL

??? 对于商业用户来说,要找到一个自己需要使用的服务,他必须知道如何来调用。 WSDL (Web Services Description Language) 规范是一个描述接口,语义以及Web服务为了响应请求需要经常处理的工作的XML文档。这将使简单地服务方便,快速地被描述和记录。以下是一个WSDL的样例:

??? <?xml version="1.0"?>

??? <definitions name="StockQuote"

??? targetNamespace="http://example.com/stockquote.wsdl" xmlns:tns="http://example.com/stockquote.wsdl" xmlns:xsd1="http://example.com/stockquote.xsd" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/">

??? <types>

??? <schema targetNamespace=http://example.com/stockquote.xsd xmlns="http://www.w3.org/2000/10/XMLSchema">

??? <element name="TradePriceRequest">

??? <complexType>

??? <all>

??? <element name="tickerSymbol" type="string"/>

??? </all>

??? </complexType>

??? </element>

??? <element name="TradePrice">

??? <complexType>

??? <all>

??? <element name="price" type="float"/>

??? </all>

??? </complexType>

??? </element>

??? </schema>

??? </types>

??? <message name="GetLastTradePriceInput">

??? <part name="body" element="xsd1:TradePriceRequest"/>

??? </message>

??? <message name="GetLastTradePriceOutput">

??? <part name="body" element="xsd1:TradePrice"/>

??? </message>

??? <portType name="StockQuotePortType">

??? <operation name="GetLastTradePrice">

??? <input message="tns:GetLastTradePriceInput"/>

??? <output message="tns:GetLastTradePriceOutput"/>

??? </operation>

??? </portType>

??? <binding name="StockQuoteSoapBinding"

??? type="tns:StockQuotePortType">

??? <soap:binding style="document"

??? transport="http://schemas.xmlsoap.org/soap/http"/>

??? <operation name="GetLastTradePrice">

??? <soap:operation

??? soapAction="http://example.com/GetLastTradePrice"/>

??? <input>

??? <soap:body use="literal"/>

??? </input>

??? <output>

??? <soap:body use="literal"/>

??? </output>

??? </operation>

??? </binding>

??? <service name="StockQuoteService">

??? <documentation>My first service</documentation>

??? <port name="StockQuotePort" binding="tns:StockQuoteBinding">

??? <soap:address location="http://example.com/stockquote"/>

??? </port>

??? </service>

??? </definitions>

??? 它包含了以下的关键信息: 消息的描述和格式定义可以通过XML文档中的<types>和<message> 标记来传送。 <portType> 标记中表示了消息传送机制。 (e.g. request-only,request-response,response-only) 。 <binding> 标记指定了编码的规范 。 <service> 标记中表示服务所处的位置 (URL)。 WSDL在UDDI中总是作为一个接口描述文档。因为UDDI是一个通用的用来注册WSDL规范的地方,UDDI的规范并不限制任何类型或者格式描述文档。这些文档可能是一个WSDL文档,或者是一个正规的包含导向文档的Web页面,也可能只是一个包含联系信息的电子邮件地址。现在Java提供了一个 Java API for WSDL (JWSDL)规范。它提供了一套能快速处理WSDL文档的方法,并且不用直接对XML文档进行操作,它会比JAXP更方便,更快速。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读