Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/rest/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Restful与其他Web服务_Rest - Fatal编程技术网

Restful与其他Web服务

Restful与其他Web服务,rest,Rest,Restful Web服务(也称为Restful Web API)是一种使用HTTP和REST原理实现的简单Web服务。这样的web服务可以看作是资源的集合。这种web服务的定义可以被认为包括三个方面: web服务的基本URI,例如 web服务支持的数据的MIME类型。这通常是JSON、XML或YAML,但也可以是任何其他有效的MIME类型 web服务使用HTTP方法(例如POST、GET、PUT或DELETE)支持的一组操作 最初定义为简单对象访问协议的SOAP是一种协议规范,用于在计算机

Restful Web服务(也称为Restful Web API)是一种使用HTTP和REST原理实现的简单Web服务。这样的web服务可以看作是资源的集合。这种web服务的定义可以被认为包括三个方面:

  • web服务的基本URI,例如
  • web服务支持的数据的MIME类型。这通常是JSON、XML或YAML,但也可以是任何其他有效的MIME类型
  • web服务使用HTTP方法(例如POST、GET、PUT或DELETE)支持的一组操作
最初定义为简单对象访问协议的SOAP是一种协议规范,用于在计算机网络中实现Web服务时交换结构化信息。它依赖可扩展标记语言(XML)作为其消息格式,并且通常依赖其他应用层协议(最著名的是远程过程调用(RPC)和HTTP)进行消息协商和传输。此基于XML的协议由三部分组成:

  • 信封-定义消息中的内容以及如何处理它-
  • 用于表示应用程序定义的数据类型实例的一组编码规则
  • 以及表示过程调用和响应的约定
参考资料:


顺便说一句,一个简单的谷歌搜索可以为你提供答案……

关于网络服务的争论并不完全,但有一些因素很突出

RESTful web服务是web服务的“家族”。有人会称之为架构

RESTful web服务使用HTTP协议执行来自web服务的请求。他们使用HTTP动词:GET、POST、PUT和DELETE(有时还有其他动词)。请求本身指向表示资源的URL。。。有时,请求将在正文中包含可以通过HTML、JSON、二进制数据或其他方式访问的数据

纯RESTful web服务只需要URL和HTTP动词来描述请求的操作。。。车身数据通常是请求操作中涉及的有效载荷。。。它不应规定所请求的操作

另一方面,SOAP实际上是一种协议。它通常通过HTTP传输,但HTTP请求只是将SOAP数据包传送到必要的处理程序的一种方法。SOAP请求的内容描述了客户端希望执行的操作。它包含所有必要的信息


它们是实现Web服务的两种截然不同的方式。如果你问“哪一个更好”的问题,你可能会得到双方的强烈意见。我建议您进一步调查并自己决定。

RESTful服务注重速度和简单性,消除了许多web服务所需的简单事务的SOAP开销。然而,以这种方式实现的服务是非常特定于HTTP的,您很难在该上下文之外使用它

SOAP服务提供了更多现成的特性,其中最重要的(当然是imho)是发现。能够在几乎任何开发环境中添加对SOAP服务的引用,并让它自动生成一个代理类,该类将隐藏底层HTTP复杂性,甚至可以序列化非平凡类型,这是非常非常有用的


我觉得这两种web服务开发方法都有自己的位置。对于不需要任何复杂内容的AJAX需求,我倾向于将其实现为HTTP处理程序(ASP.NET)。任何需要从另一个应用程序或同一应用程序中的多个位置调用的内容,我都实现为SOAP服务,因为它提供了协议封装,以及在没有HTTP开销的情况下调用底层对象的能力。

好的,关于这个主题,堆栈溢出有很多知识

我认为阐述REST精神及其与SOAP等技术的比较的最好的文章是

与SOAP不同,REST不是一个标准—它更多地是一种以资源和您可以对资源执行的操作为中心的方法。HTTP动词GET、POST、PUT和DELETE是可以对任何资源应用的典型操作。SOAP是一个忽略这些动词的标准,并且已经发明了一个更全面的协议,它在最流行的动词HTTP POST之上工作,以实现最大的互操作性。在大多数情况下,这种增加的复杂性是不必要的,对于资源的简单HTTP GET请求通常足以满足可能是1KB+的SOAP+XML的要求,从而实现等效的结果

您还可以向(REST的发明者)查询有关其含义的更多信息。

1)REST比SOAP更简单、更易于使用 2) REST使用HTTP协议来生成或使用web服务,而SOAP使用XML。 3) 与SOAP相比,REST是轻量级的,是移动设备和PDA的首选。 4) REST支持不同的格式,如文本、JSON和XML,而SOAP只支持XML。
5) REST web服务调用可以缓存以提高性能。

-1快速访问wiki,嗯。我不知道我对人们粘贴答案的感觉如何。甚至没有提到。有点让我花的时间一文不值。妻子解释上的greeeeat链接,肯定把那一个书签了!哇,对妻子的解释!真不敢相信我也得到了这么多选票。值一百万!遗憾的是,它不再可用了,作者将它删除了。除了这是互联网,它已经被转载到许多网站上:网络档案管理员可能还有副本。可能的副本