restful是表述性状态转移,它是一个以网络为基础的软件架构设计,可以通过它的架构核心和4个约束来理解RESTful。

REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST指的是一组架构约束条件和原则。" 如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构。

REST本身并没有创造新的技术、组件或服务,而隐藏在RESTful背后的理念就是使用Web的现有特征和能力, 更好地使用现有Web标准中的一些准则和约束。虽然REST本身受Web技术的影响很深, 但是理论上REST架构风格并不是绑定在HTTP上,只不过目前HTTP是唯一与REST相关的实例。 所以我们这里描述的REST也是通过HTTP实现的REST。

RESTful 架构的核心规范与约束:统一接口

分为四个子约束:

1.每个资源都拥有一个资源标识,每个资源的资源标识可以用来唯一地标明该资源

2.消息的自描述性

3.资源的自描述性。

4.HATEOAS Hypermedia As The Engine Of Application State(超媒体作为应用状态引擎)

即客户只可以通过服务端所返回各结果中所包含的信息来得到下一步操作所需要的信息,如到底是向哪个URL发送请求等。也就是说,一个典型的REST服务不需要额外的文档标示通过哪些URL访问特定类型的资源,而是通过服务端返回的响应来标示到底能在该资源上执行什么样的操作。

php restful是什么意思,怎么理解restful相关推荐

  1. restful api接口规范_如何理解RESTful API设计规范?

    作者:涂根华 https://www.cnblogs.com/tugenhua0707/p/12153857.html RESTful是目前最流行的API设计规范,它是用于Web数据接口的设计.从字面 ...

  2. [转] 理解RESTful架构

    FROM:http://www.ruanyifeng.com/blog/2011/09/restful.html 越来越多的人开始意识到,网站即软件,而且是一种新型的软件. 这种"互联网软件 ...

  3. 理解RESTful架构

    越来越多的人开始意识到,网站即软件,而且是一种新型的软件. 这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency).高 ...

  4. 我是如何根据豆瓣api来理解Restful API设计的

    1.什么是REST REST全称是Representational State Transfer,表述状态转移的意思.它是在Roy Fielding博士论文首次提出.REST本身没有创造新的技术.组件 ...

  5. 如何理解 RESTful 的幂等性

    来源:http://blog.720ui.com/2016/restful_idempotent/ 理解RESTful的幂等性,并且设计符合幂等规范的高质量RESTful API. 怎么理解幂等性 H ...

  6. [转载] 理解RESTful架构

    原文: http://www.ruanyifeng.com/blog/2011/09/restful.html 理解RESTful架构 作者: 阮一峰 日期: 2011年9月12日 越来越多的人开始意 ...

  7. 理解RESTful架构【转】

    越来越多的人开始意识到,网站即软件,而且是一种新型的软件. 这种"互联网软件"采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency).高 ...

  8. 如何理解RESTful的幂等性

    理解RESTful的幂等性,并且设计符合幂等规范的高质量RESTful API. 怎么理解幂等性 HTTP幂等方法,是指无论调用多少次都不会有不同结果的 HTTP 方法.不管你调用一次,还是调用一百次 ...

  9. 转: 理解RESTful架构

    转自: http://www.ruanyifeng.com/blog/2011/09/restful.html 作者: 阮一峰 日期: 2011年9月12日 越来越多的人开始意识到,网站即软件,而且是 ...

最新文章

  1. Deepin 下安装 Docker
  2. 生日小助手官方网站已经发布了!
  3. 避免表格table被撑开变形的CSS代码实例
  4. DL之Attention-ED:基于TF NMT利用带有Attention的 ED模型训练、测试(中英文平行语料库)实现将英文翻译为中文的LSTM翻译模型过程全记录
  5. Pycharm简单配置及详细快捷键介绍
  6. windows 根据端口杀死进程
  7. 推荐Notepad插件格式化Sql代码,开发利器。
  8. 沃邮箱的服务器设置,沃邮箱Outlook和Foxmail设置收发邮件
  9. java解惑--谜题11:最后的笑声
  10. 【3】少儿Python编程学习_从哪开始学习
  11. 【Android+Kotlin】自适应CoordinatorLayout,AppBarLayout,CollapsingToolbarLayout与Palette
  12. 正宇丨青松气质 红梅品格
  13. java旋转太极图_如何用CSS纯代码画一个旋转的太极图(附代码)
  14. oracle绑定变量执行计划,绑定变量对执行计划的影响
  15. 配置Exchange 2010 服务器(一) 配置产品密钥及登录OWA时用户不需要输入域名称
  16. 怎么重新编译CE5.6?
  17. 各种CAD工程常用图例,如何轻松看懂图!
  18. java海伦公式求三角形面积_海伦公式求三角形面积出错求教
  19. 与一个即将毕业的计算机系大四学生关于求职的对话
  20. HCIE实用性高吗?难考到什么程度?

热门文章

  1. 【数字图像处理】【Matlab】【作业六】几何变换(平移、缩放、旋转、镜像、转置等)
  2. 《以幽默的方式过一生》总结4——冬
  3. Java集合 ArrayList 扩容
  4. 实现互联网思维的“独孤九剑”
  5. three.js教程创建消防场景示例二
  6. JS--拷贝数组的方法(浅拷贝)
  7. Java+SSM农场信息管理系统(含源码+论文+答辩PPT等)
  8. CSS-涟漪效果的按钮
  9. 群晖NAS搭建SVN服务器过程记录
  10. 华为战略规划落地的核心:VDBD(价值驱动业务设计模型)