📜  Web服务的类型

📅  最后修改于: 2021-01-12 00:39:22             🧑  作者: Mango

Web服务的类型

Web服务有两种类型:

  • RESTful Web服务
  • SOAP Web服务

RESTful Web服务

REST代表代表性状态转移。它由Roy Thomas Fielding开发,他还开发了HTTP。 RESTful Web服务的主要目标是使Web服务更有效。 RESTful Web服务尝试使用HTTP中已经存在的不同概念来定义服务。 REST是一种体系结构方法,而不是协议。

它没有定义标准的消息交换格式。我们可以使用XML和JSON构建REST服务。 JSON是REST更流行的格式。密钥抽象是REST中的资源。资源可以是任何东西。可以通过统一资源标识符(URI)对其进行访问。例如:

该资源具有XML,HTML和JSON之类的表示形式。当前状态由代表性资源捕获。当我们请求资源时,我们提供资源的表示形式。 HTTP的重要方法是:

  • GET:读取资源。
  • PUT:更新现有资源。
  • POST:它创建一个新资源。
  • DELETE:删除资源。

例如,如果我们要在社交媒体应用程序中执行以下操作,我们将获得相应的结果。

POST / users:创建一个用户。

GET / users / {id}:它检索一个用户的详细信息。

GET / users:它检索所有用户的详细信息。

DELETE / users:删除所有用户。

DELETE / users / {id}:删除用户。

GET / users / {id} / posts / post_id:它检索特定帖子的详细信息。

POST / users / {id} / posts:它为用户创建一个帖子。

GET / users / {id} / post:检索用户的所有帖子

HTTP还定义了以下标准状态代码:

  • 404:找不到资源
  • 200:成功
  • 201:创建
  • 401:未经授权
  • 500:服务器错误

RESTful服务约束

  • 必须有服务生产者和服务使用者。
  • 该服务是无状态的。
  • 服务结果必须是可缓存的。
  • 该接口是统一的并且公开资源。
  • 服务应采用分层架构。

RESTful Web服务的优势

  • RESTful Web服务是与平台无关的
  • 它可以用任何编程语言编写,并且可以在任何平台上执行。
  • 它提供了不同的数据格式,例如JSON,文本,HTMLXML
  • 与SOAP相比,它速度很快,因为没有像SOAP这样的严格规范。
  • 这些是可重用的
  • 这些是语言中立的

SOAP Web服务

REST定义了一种架构方法,而SOAP对XML的格式提出了限制。 XML在服务提供者和服务使用者之间传输数据。请记住,SOAP和REST不具有可比性

SOAP:简单对象访问协议的SOAP缩写。它定义了标准的XML格式。它还定义了构建Web服务的方式。我们使用Web服务定义语言(WSDL)定义请求XML响应XML的格式

例如,我们已请求从Facebook应用程序访问Todo应用程序。 Facebook应用程序将XML请求发送到Todo应用程序。 Todo应用程序处理该请求并生成XML响应,然后将其发送回Facebook应用程序。

如果使用的是SOAP Web服务,则必须使用SOAP的结构。

在上图中, SOAP-Envelope包含一个SOAP-HeaderSOAP-Body 。它包含识别请求所需的元信息,例如,身份验证,授权,签名等。SOAP-Header是可选的。 SOAP正文包含请求或响应的真实XML内容。如果发生错误,响应服务器将以SOAP-Fault进行响应。

让我们了解SOAP XML请求和响应结构。

XML请求


    
        
            course1
        
    

XML回应


                          
                           
                   
                   
                       Course1
                       Spring
                       10 Steps
                       
                    
                       

要记住的要点

  • SOAP定义了请求响应的格式。
  • SOAP对传输没有任何限制。我们可以使用HTTPMQ进行通信。
  • 在SOAP中,服务定义通常使用Web服务定义语言(WSDL)完成。 WSDL定义了端点,所有操作,请求结构响应结构

端点是显示HTML或ASP页面的连接点。它提供了解决Web Service端点所需的信息。这些操作是允许访问的服务。请求结构定义了请求的结构,响应结构定义了响应的结构。