REST与HTTP差别

供稿:hz-xin.com     日期:2024-05-21
restful和http的区别

REST 定义了一组体系架构原则,您可以根据这些,包括使用不同语言编写的客户端如何通过 HTTP 处理和传输资源状态。所以在事实上,REST 对 Web的影响非常大,由于其使用相当方便,已经普遍地取代了基于 SOAP 和 WSDL 的接口设计。在多年以后的今天,REST的主要框架已经开始雨后春笋般的出现。

个人理解:
(一) 首先REST只是一种风格,不是一种标准
(二) REST是以资源为中心的
(三) REST充分利用或者说极端依赖HTTP协议

一.对于今天正在吸引如此多注意力的最纯粹形式的 REST Web 服务,其具体实现应该遵循以下基本设计原则:

1.1.显式地使用不同的 HTTP 请求方法
1.2.无状态
1.3.公开目录结构式的 URI(通过逻辑URI定位资源)。

1.1.显式地使用不同的 HTTP 请求方法

我们在 Web 应用中处理来自客户端的请求时,通常只考虑 GET 和 POST 这两种 HTTP 请求方法。实际上,HTTP 还有 HEAD、PUT、DELETE 等请求方法。而在 REST 架构中,用不同的 HTTP 请求方法来处理对资源的 CRUD(创建、读取、更新和删除)操作:

若要在服务器上创建资源,应该使用 POST 方法。
若要检索某个资源,应该使用 GET 方法。
若要更改资源状态或对其进行更新,应该使用 PUT 方法。
若要删除某个资源,应该使用 DELETE 方法。

restful是一种架构风格,其核心是面向资源;而webService底层SOAP协议,主要核心是面向活动。
SOAP:简单对象访问协议,很轻量,同时作为应用协议可以基于多种传输协议来传递消息(Http,SMTP等)。
客户端和服务器端的通讯方式

REST 与代理服务器 (Proxy Servers)

一般代理服务器的实现根据 (URI, HTTP Method) 两元组来决定 HTTP 请求的安全合法性。
当发现类似于(http://localhost:8182/v1/users/{username},DELETE)这样的请求时,予以拒绝。
对于 SOAP,如果我们想借助于既有的代理服务器进行安全控制.
REST 与缓存服务器 (Cache Server)

使用 HTTP 协议的 SOAP,由于其设计原则上并不像 REST 那样强调与 Web 的工作方式相一致,所以,基于 SOAP 应用很难充分发挥 HTTP 本身的缓存能力,图 7. SOAP 与缓存服务器 (Cache Server)

总结:
REST对于资源型服务接口来说很合适,同时特别适合对于效率要求很高,但是对于安全要求不高的场景。而SOAP的成熟性可以给需要提供给多开发语言的,对于安全性要求较高的接口设计带来便利。所以我觉得纯粹说什么设计模式将会占据主导地位没有什么意义,关键还是看应用场景。成熟度SOAP虽然发展到现在已经脱离了初衷,但是对于异构环境服务发布和调用,以及厂商的支持都已经达到了较为成熟的情况。不同平台,开发语言之间通过SOAP来交互的web service都能够较好的互通。

比如现在你想得到天气的信息,因为你不能预测,所以要由气象局的服务器得到,而气象局的服务器可能是用Rest或者其他网络服务的应用框架构建的WebService,你只要像访问网站一下,发信息给服务器,服务器就可以返回相应的信息(这里的信息可能一般是json,xml的数据,你要使用还需要解析),使你的程序中也可以使用比较专业权威的数据,而传输方式可能是tcp或http等。Rest应用在服务器上,而http是应用在服务器与访问者之间,是客户端程序与服务器交换数据的方法,当然不一样了。

rest 可作为三种词性用,它不是restive的词根!! 所以意思会有差别。(形容词) 其余的 (名词) 休息, 其余的部分, 支撑物 (动词)搁(在), 休息,

REST与HTTP差别
答:Rest应用在服务器上,而http是应用在服务器与访问者之间,是客户端程序与服务器交换数据的方法,当然不一样了。 追问 http也可以应用在服务器之间啊。我估计REST并不是一个什么新技术,只是一个新名词而己,里面会有一些封装,不知道我的理解对不对。 追答 http只是数据交换的方法,支持服务器与客户端间数据交换,这里...

https和http的差别
答:HTTPS和HTTP的主要差别在于安全性。HTTPS通过SSL/TLS协议对传输的数据进行加密,从而保证了数据传输过程的安全性,而HTTP则不提供加密,数据传输过程存在被窃取或篡改的风险。HTTPS(HyperText Transfer Protocol Secure)即安全超文本传输协议,它在HTTP的基础上加入了SSL/TLS协议,从而在客户端和服务器之间提供...

https和http的差别是什么?
答:HTTPS和HTTP的区别主要如下:1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。4、http的连接很简单,是无状态...

http协议和https协议的区别
答:一、传输信息安全性不同 1、http协议:是超文本传输协议,信息是明文传输。如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息。2、https协议:是具有安全性的ssl加密传输协议,为浏览器和服务器之间的通信加密,确保数据传输的安全。二、连接方式不同 1、http协议:http的连...

http协议和https协议的区别
答:一、传输信息安全性不同 1、http协议:是超文本传输协议,信息是明文传输。如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息。2、https协议:是具有安全性的ssl加密传输协议,为浏览器和服务器之间的通信加密,确保数据传输的安全。二、连接方式不同 1、http协议:http的...

SOAP 协议和 HTTP 协议的详细比较与解析
答:而REST则强调简洁和无状态。HTTP与RPC(Remote Procedure Call)接口的区别在于,HTTP更注重接口的清晰性和可访问性,而RPC更像是一种远程调用的方式,可能涉及更多的二进制数据传输。深入研究SOAP和HTTP,有助于我们更好地选择和使用最适合特定场景的网络通信协议,提高应用程序的效率和可维护性。

欧曼est和gtl哪个好?
答:欧曼est和gtl都蛮好的:1、欧曼EST与GTL驾驶室本质上无太大的差别,重点是欧曼EST超级卡车驾驶室特别高大上,内饰造型简洁硬朗又不失奢华,层次感强,提供了超越同级别的超大活动空间,卧铺最宽910mm,更舒适;2、全气囊三级减震系统:空气悬架+车身四点悬浮系统+带腰托的多向可调节空气弹簧座椅、气动...

系统接口,有哪一些协议,具体实现方式有什么区别,例如http
答:SSL协议建立在可靠的TCP传输控制协议之上,并且与上层协议无关,各种应用层协议(如:HTTP,FTP,TELNET等)能通过SSL协议进行透明传输。 SSL协议分为两层:SSL握手协议和SSL记录协议。SSL协议与TCP/IP协议间的关系如图一所示: HTTPS FTPS TELNETS IMAPS等 SSL握手协议 SSL记录协议 TCP传输控制协议 IP因特网协议 图一 ...

请教FTP、BBS、HTTP之区别?
答:<BR> WWW服务器使用的主要协议是HTTP协议,即超文体传输协议。由于HTTP协议支持的服务不限于WWW,还可以是其它服务,因而HTTP协议允许用户在统一的界面下,采用不同的协议访问不同的服务,如FTP、Archie、SMTP、NNTP等。另外,HTTP协议还可用于名字服务器和分布式对象管理。

http和https的区别有哪些?
答:1、http http指的是超文本传输协议,全称Hypertext Transfer Protocol,是一个简单的请求-响应协议,它通常运行在TCP之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII形式给出;而消息内容则具有一个类似MIME的格式。这个简单模型是早期Web成功的有功之臣...