Restful接口通常返回的是完整的数据模型,粒度过于“粗”,对客户端不友好(客户端可能只需要其中一小部分字段)。
Restful典型使用场景:开放API(各种开放平台的数据api)。开放API之所以开放,就是因为不知道也不关心客户端需要什么返回结果,直接返回完整的数据,好处是通用。
实际开发中,通常都是内部接口开发,需求非常明确,所以一般都是灵活借鉴Restful中的优点,结合自己的实际情况,来设计自己的内部api,在基本的增删改查接口之外,通常会设计一些业务接口(根据业务逻辑需要,一个接口中对多个资源的数据进行整合再返回)。
restful 常用的资源路由:
| 标识 | 请求类型 | 生成路由规则 | 对应操作方法(默认) | 备注 |
|---|---|---|---|---|
| index | GET | news | index | 查询多条数据(列表) |
| read | GET | news/:id | read | 查询一条数据(详情、修改页面展示) |
| save | POST | news | save | 新增一条数据 |
| update | PUT | news/:id | update | 修改一条数据 |
| delete | DELETE | news/:id | delete | 删除一条数据 |
请求类型伪装:支持请求类型伪装,可以在post表单里面提交——method变量,传入需要的伪装的请求类型,例如

比如 使用ajax的post请求伪装put请求
public/api.html中 添加以下代码
<input type="button" id="post_to_put" value="伪装put">
<input type="button" id="post_to_delete" value="伪装delete">
<script>
$(function(){
$('#post_to_put').click(function(){
$.ajax({
"url":"/news/33",
"type":"post",
"data":"_method=put",
"dataType":"json",
"success":function(res){
console.log(res);
}
});
});
$('#post_to_delete').click(function(){
$.ajax({
"url":"/news/33",
"type":"get",
"data":"_method=delete",
"dataType":"json",
"success":function(res){
console.log(res);
}
});
});
})
</script>版权声明:本文为chou142857原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。