(视图主要用于封装结果,生成页面展示的html内容)
RESTful 是一种开发理念,简洁,;层次感,主要体现在每个URL代表一种资源,所以在开发REST API 接口时,视图中要频繁的进行序列化和反序列化,将数据库数据序列化为前端所需要的格式,并返回,将前端发送的数据反序列化为模型类对象,并保存到数据库中·
之前的开发的一个电商商城就是用这种 RESTful 设计风格,我们将 API部署在专用的域名下,在设计 API接口,我们采用与数据库的表名相对应的名词复数形式作为网址,有的还在URL 中加入版本号和过滤的信息。
在 HTTP 请求方法上,我们设计了GET从服务器取出资源,POST从服务器新建资源,PUT从服务器更新资源,DELETE从服务器更新资源,这四种比较常见的HTTP请求方法
RESTful 设计方法
-
应该尽量将 API部署在专的域名之下
-
应该将API的版本号放入 URL Github 就是将 API 版本号放入 URL
-
路径, API 的具体网址,每个网址代表一种资源,资源作为网址,只能用名词,不能有动词,而且所用的名词往往与数据库的表名对应,还有就是 API 中的名词应该使用复数,无论是子资源还是所有的资源
-
对于资源的 具体操作类型,由HTTP动词表示,常用的有,GET从服务器取出资源,POST从服务器新建资源,PUT从服务器更新资源,DELETE从服务器更新资源、
-
过滤信息,API 应该提供参数,过滤返回结果 比如你可以在指定返回的页数 ?limit=10
-
状态码
-
返回结果
-
超媒体。就是在返回结果中提供链接,连向其他的API方法
-
最重要的一点,服务器返回的数据格式,应该 尽量使用JSON,避免使用XML