分享人:李宁虎
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
RESTful架构风格最初由Roy T. Fielding在其2000年的博士学位论文中提出。诞生之初,它就因其可扩展性和简单性受到越来越多的架构师和开发者们的青睐。在企业中,RESTful API,也逐渐超越SOAP成为实现SOA的重要手段之一。时至今日,RESTful架构风格已成为企业级服务的标配。
REST即Representational State Transfer的缩写,可译为"表现层状态转化”。REST最大的几个特点为:资源、统一接口、URI和无状态。
资源:所谓"资源",就是网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的实在。资源是以json(或其他Representation)为载体的、面向用户的一组数据集,资源对信息的表达倾向于概念模型中的数据
统一接口:RESTful架构风格规定,数据的元操作,即CRUD分别对应于HTTP方法:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源,这样就统一了数据操作的接口,仅通过HTTP方法,就可以完成对数据的所有增删查改工作。
URI : 可以用一个URI(统一资源定位符)指向资源,每个URI都对应一个特定的资源,获取这个资源,访问它的URI就可以了,一般的,每个资源至少有一个URI与之对应,最典型的URI即URL。
无状态:所谓无状态的,即所有资源,都可以通过URL定位,这个定位与其他资源无关,也不会因为其他资源的变化而改变。关于有状态和无状态,举个栗子,如查询员工的工资,如果查询工资是需要登录系统,进入查询工资的页面,执行相关操作后,获取工资的多少,则这种情况是有状态的,因为查询工资的每一步操作都依赖于前一步操作,只要前置操作不成功,后续操作就无法执行;如果输入一个url即可得到指定员工的工资,则这种情况是无状态的,因为获取工资不依赖于其他资源或状态,且这种情况下,员工工资是一个资源,由一个url与之对应,可以通过HTTP中的GET方法得到资源,这是典型的RESTful风格
左边是错误的,右边正确。
还有一个小问题,一般来说,Web服务器默认的只支持Post和Get这两种请求方法。 在做项目时,使用DELETE,PUT并不能直接使用。
见代码
让我们来看看这个例子的代码。
restful在实际应用中,处于什么地位?
百度
感谢观看,如有出错,恳请指正
BY : 北京分院 李宁虎