Web API(一);Restful架构
一、什么是RESTful
REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。REST指的是一组架构约束条件和原则。如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构。
REST本身并没有创造新的技术、组件或服务,而隐藏在RESTful背后的理念就是使用web的现有特征和能力,更好地使用现有web标准中的一些准则和约束。虽然REST本身受web技术的影响很深,但是理论上REST架构风格并不是绑定在HTTP上,只不过目前HTTP是唯一与REST相关的实例。所以我们这里描述的REST也是通过HTTP实现的REST。
REST最大的几个特点为:资源、统一接口、URI和无状态。
1、资源
任何事物,只要有被引用到的必要,那么它就是一个资源。资源可以是实体,也可以只是一个抽象概念。
2、统一接口
RESTful架构应该遵循统一接口原则,统一接口包含了一组受限的预定义的操作,不论什么样的资源,都是通过使用相同的接口进行资源的访问。
RESTful架构风格规定:数据的元操作,即CRUD(create,read,update和delete,即数据的增删改查)操作,分别对应于HTTP方法:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源,这样就统一了数据操作的接口,仅通过HTTP方法,就可以完成对数据的所有增删改查工作。
3、URI
URI(Uniform Resource Identifier)即统一资源标识符。URI既可以看成是资源的地址,也可以看成是资源的名称。
4、无状态
无状态即所有的资源都可以通过URI定位,而且这个定位与其他资源无关,也不会因为其他资源的变化而改变。