restful什么是 RESTful 到底 REST 和 SOAP,RPC 有何区别

restful  时间:2021-08-29  阅读:()

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

adj.平静的,悠闲的,让人得到休息的; 安生 例子: a hotel with a restful atmosphere 气氛闲适幽雅的旅馆 She fell into restful slumber. 她进入宁静的安眠之中。

什么样的风格才叫RESTFUL-CSDN论坛

RESTful架构,并不是一个容易说清楚的问题。

下面,我就谈谈我理解...js和Backbonejs这些前端框架的时候,发现这些先进的前端框架都是支持REST风格的服务

我是一个人么,还有人觉得 RESTful 是糟糕的设计么

我主要写后端代码,以前写 PHP, 现在写 Node.js. 刚听说 RESTful 的时候,觉得很高端大气上档次,很理想很美好。

但在后来的实践中发现 RESTful 很大程度上拖慢了后端的开发速度,而对前端(AngularJS)的开发速度改善也很有限。

RESTful 希望将所有请求都包装成对资源的新增,读取,修改,以对应不同的 HTTP 动词,但是并非所有请求都可以归到前面几类,既然无法将所有请求都 RESTful 化,甚至无法将大部分的请求 RESTful 化,那么意义就很有限了,会导致花费大量时间斟酌 API 应该如何设计。

RESTful 将一部分参数放到了 URL 里,还有一部分参数在 Header 里,从 URL 和 Header 里分离参数,虽然有库的辅助,但是我觉得很麻烦。

RESTful 通过 Status Code 来表示结果状态,但是通常的情况下,结果只有成功和出错两种情况,出错的情况分很多种,原因都很复杂,即使有 Status Code 依然需要有一个字符串来描述错误详情,所以 Status Code 在这里就显得很多余了。

所以我现在开始坚定地黑 RESTful, 我认为「传统」的 API 设计才是最可行的,即: * URL 是一个动词,其中不包含参数。

* 没有副作用的请求可以用 GET, 其余必须 POST * POST 时用正文传递参数,GET 时用 Query String 传递参数 * Status Code 为 200 或 400, 后者会返回一个字符串形式的错误代号。

这个?

什么是REST-ful,以及REST-ful的实现

REST 指的是一组架构约束条件和原则 Web 应用程序最重要的 REST 原则是:客户端和服务器之间的交互,在请求之间是无状态的;客户端的每个请求都必须包含理解请求所必需的信息;服务器在请求之间的任何时间点重启,客户端 不会得到通知;无状态请求可以由任何可用服务器回答,十分适合云计算之类的环境;客户端可以缓存数据以改进性能。

在服务器端,应用程序状态和功能可以分为各种资源:每个资源都使用 URI (Universal Resource Identifier) 得到一个惟一的地址。

所有资源都共享统一的界面,以便在客户端和服务器之间传输状态。

使用的是标准的 HTTP 方法,比如 GET、PUT、POST 和 DELETE。

另一个重要的 REST 原则是分层系统:这表示组件无法了解它与之交互的中间层以外的组件。

通过将系统知识限制在单个层,可以限制整个系统的复杂性,促进了底层的独立性。

当 REST 架构的约束条件作为一个整体应用时,将生成一个可以扩展到大量客户端的应用程序。

它还降低了客户端和服务器之间的交互延迟。

统一界面简化了整个系统架构,改进了子系统之间交互的可见性。

REST 简化了客户端和服务器的实现。

REST-ful的实现:构建 RESTful Web 服务的多层架构 RESTful Web 服务和动态 Web 应用程序在许多方面都是类似的。

有时它们提供相同或非常类似的数据和函数,尽管客户端的种类不同。

例如,在线电子商务分类网站为用户提供一个浏览器界面, 用于搜索、查看和订购产品。

如果还提供 Web 服务供公司、零售商甚至个人能够自动订购产品,它将非常有用。

与大部分动态 Web 应用程序一样,Web 服务可以从多层架构的关注点分离中受益。

业务逻辑和数据可以由自动客户端和 GUI 客户端共享。

惟一的不同点在于客户端的本质和中间层的表示层。

此外,从数据访问中分离业务逻辑可实现数据库独立性,并为各种类型的数据存储提供插件能力。

什么是 RESTful 到底 REST 和 SOAP,RPC 有何区别

第一个问题:什么是RESTful? REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。

有兴趣可以看看这里论文`,谁是Fielding?点击前面名字了解。

那RESTful到底是什么呢?简单的讲,它是:一种架构设计风格,提供了设计原则和约束条件,而不是架构。

而满足这些约束条件和原则的应用程序或设计就是 RESTful架构或服务。

推荐阅读: 张善友博客——REST 入门介绍 infoq——深入浅出REST 第二个问题:到底 REST 和 SOAP、RPC 有何区别? 这个问题比较大,要知道他们有什么区别首先需要明白,他们分别是什么? REST上面已经简单的说明了它是什么。

SOAP(简单对象访问协议)是什么?SOAP是一种数据交换协议规范,是一种轻量的、简单的、基于XML的协议的规范。

它有什么优点?简单总结为: 易用,灵活,跨语言,跨平台。

易用:是因为它的消息是基于xml并封装成了符合http协议,因此,它符合任何路由器、 防火墙或代理服务器的要求。

灵活:表现在极具拓展性,SOAP 无需中断已有的应用程序, SOAP 客户端、 服务器和协议自身都能发展。

而且SOAP 能极好地支持中间介质和层次化的体系结构。

跨语言:soap可以使用任何语言来完成,只要发送正确的soap请求即可。

跨平台:基于soap的服务可以在任何平台无需修改即可正常使用。

RPC(远程调用框架) 是一种允许分布式应用程序调用网络上不同计算机的可用服务的机制。

涉猎不多,一下省略256个字。

有熟悉的朋友可以在评论补充,然后我会修改到该内容中去 从上面我们可以看出,REST 和 SOAP、RPC 有何区别呢?没什么太大区别,他们的本质都是提供可支持分布式的基础服务,最大的区别在于他们各自的的特点所带来的不同应用场景。

REST可以看着是 ,php ,java 都已经对其有了很好的支持 。

这是REST薄弱的地方。

Megalayer优化带宽和VPS主机主机方案策略 15M CN2优化带宽和30M全向带宽

Megalayer 商家主营业务是以独立服务器和站群服务器的,后来也陆续的有新增香港、菲律宾数据中心的VPS主机产品。由于其线路的丰富,还是深受一些用户喜欢的,有CN2优化直连线路,有全向国际线路,以及针对欧美的国际线路。这次有看到商家也有新增美国机房的VPS主机,也有包括15M带宽CN2优化带宽以及30M带宽的全向线路。Megalayer 商家提供的美国机房VPS产品,提供的配置方案也是比较多,...

ShockHosting($4.99/月),东京机房 可享受五折优惠,下单赠送10美金

ShockHosting商家在前面文章中有介绍过几次。ShockHosting商家成立于2013年的美国主机商,目前主要提供虚拟主机、VPS主机、独立服务器和域名注册等综合IDC业务,现有美国洛杉矶、新泽西、芝加哥、达拉斯、荷兰阿姆斯特丹、英国和澳大利亚悉尼七大数据中心。这次有新增日本东京机房。而且同时有推出5折优惠促销,而且即刻使用支付宝下单的话还可获赠10美金的账户信用额度,折扣相比之前的常规...

Digital-VM80美元新加坡和日本独立服务器

Digital-VM商家的暑期活动促销,这个商家提供有多个数据中心独立服务器、VPS主机产品。最低配置月付80美元,支持带宽、流量和IP的自定义配置。Digital-VM,是2019年新成立的商家,主要从事日本东京、新加坡、美国洛杉矶、荷兰阿姆斯特丹、西班牙马德里、挪威奥斯陆、丹麦哥本哈根数据中心的KVM架构VPS产品销售,分为大硬盘型(1Gbps带宽端口、分配较大的硬盘)和大带宽型(10Gbps...

restful为你推荐
安卓开发环境搭建如何搭建安卓开发环境零终端ONU终端、e8-c终端、天翼猫三者有什么区别?查看加密空间请问下怎么看加密的qq空间上海网络维护公司上海嘉定网络公司 做监控的和综合布线的有那几家呼叫中心系统方案求呼叫中心设计方案,100坐席,具体需要些什么硬件和软件?wps表格数据恢复wps文件没保存怎么恢复公司注册如何办理我想注册一家公司,怎么注册?公司注册如何办理新成立公司如何办理注册?公司注册如何办理我想注册个小公司,具体怎么做。。。mysql数据库迁移怎样用命令行把MySQL数据库迁移到另一台Linux服务器
深圳域名注册 vps是什么 博客主机 webhosting 一点优惠网 云全民 元旦促销 蜗牛魔方 亚马逊香港官网 空间购买 smtp虚拟服务器 web应用服务器 php服务器 德讯 中国联通宽带测速 xuni 七牛云存储 netvigator hdsky 镇江高防服务器 更多