分析RESTful存在的问题
RESTful是我们已经很熟悉的用于api通信的规范,如这样:
GET http://127.0.0.1/user/1 #查询
POST http://127.0.0.1/user #新增
PUT http://127.0.0.1/user #更新
DELETE http://127.0.0.1/user #删除
在查询的时候,往往是这样:
#请求
GET http://127.0.0.1/user/1001
#响应:
{
id : 1001,
name : "张三",
age : 20,
address : "北京市",
……
}
这样似乎是没有问题的,如果,对于这次请求,我只需要id和name属性,其他的属性我都不需要,如果我依然拿到的是全部的属性,这是不是一种资源浪费?
还有这样的一种场景,就是一次请求不能满足需求,需要有多次请求才能完成,像这样:
#查询用户信息
GET http://127.0.0.1/user/1001
#响应:
{
id : 1001,
name : "张三",
age : 20,
address : "北京市",
……
}
#查询用户的身份证信息
GET http://127.0.0.1/card/8888
#响应:
{
id : 8888,
name : "张三",
cardNumber : "999999999999999",
address : "北京市",
……
}
查询用户以及他的身份证信息,需要进行2次查询才能够完成,这样对于前端等接口的使用方是很不友好的,试想一下,如果查询信息有10个,是不是要发起10次请求才能完成?