RESTful
程序员文章站
2024-03-25 16:45:46
...
一、首先什么是RESTful
- REST与技术无关,代表的是一种软件架构风格,REST是Representational State Transfer的简称,中文翻译为“表征状态转移”*
- REST从资源的角度类审视整个网络,它将分布在网络中某个节点的资源通过URL进行标识,客户端应用通过URL来获取资源的表征,获得这些表征致使这些应用转变状态*
- 所有的数据,不管是通过网络获取的还是操作数据库获得(增删改查)的数据,都是资源,将一切数据视为资源是REST区别与其他架构风格的最本质属性*
- 对于REST这种面向资源的架构风格,有人提出一种全新的结构理念,即:面向资源架构(ROA:Resource Oriented Architecture)*
- 对互联网上的任意东西都可视为资源,他认为一个url就是一个资源 比如:http://www.xxx.com/get_user/
二、资源与URL
- REST全称是表述性状态转移,那究竟指的是什么的表述? 其实指的就是资源。任何事物,只要有被引用到的必要,它就是一个资源。
- 要让一个资源可以被识别,需要有个唯一标识,在Web中这个唯一标识就是URI(Uniform Resource Identifier)。
- URI既可以看成是资源的地址,也可以看成是资源的名称。如果某些信息没有使用URI来表示,那它就不能算是一个资源, 只能算是资源的一些信息而已。URI的设计应该遵循可寻址性原则,具有自描述性,需要在形式上给人以直觉上的关联。
URI设计上的一些技巧:
- 使用_或-来让URI可读性更好
- 使用/来表示资源的层级关系
- 使用?用来过滤资源
- ,或;可以用来表示同级资源的关系
三、什么是API
API就是接口,提供的url。接口有两个用途:
- 为别人提供服务
- 前后端分离,一个写vue,一个写后端,他们之间都是通过ajax请求
四、RESTful API设计
网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备......)。
因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现"API First"的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论。
简单的示例首先:http协议请求方式:GET、POST、DELETE、PUT、PATCH、OPTION、HEAD、TRACE
之前URL的设计大多都是这种类型,不符合RESTful规范:
127.0.0.1:8000/books //查
127.0.0.1:8000/books/add //增
127.0.0.1:8000/books/change/1 //改
127.0.0.1:8000/books/delete/1 //删
- 符合RESTful规范的URL设计:
GET请求查看数据:
127.0.0.1:8000/books
返回所有数据列表 :[{}, {}, {}]
GET请求查看单条数据:
127.0.0.1:8000/books/1
返回查看的单条数据{}
POST请求添加数据:
127.0.0.1:8000/books
返回添加数据 :{}
PUT请求更新pk = 1的数据:
127.0.0.1:8000/books/1
返回更新后的数据: {}
Delete请求删除pk = 1的数据:
127.0.0.1:8000/books/1
返回空
上一篇: 什么是RESTful API?
下一篇: 增强for循环的使用