REST API端点命名

时间:2016-09-07 09:10:56

标签: node.js rest api url express

让我们考虑一下这个模型Car

{
   id: id,
   name: name,
   color: color
}

并且关于我,我有这些端点,通过id获得一辆车:

GET http://example.com/api/cars/:id

GET http://example.com/api/cars (get all cars )

将端点命名为仅提取color红色的车辆的最佳做法是什么。

3 个答案:

答案 0 :(得分:4)

为什么不在现有color端点中使用/cars查询参数?

GET http://example.com/api/cars?color=red

您只是过滤了一个集合。这是查询参数的用途。

在Express中,使用req.query.color获取color查询参数的值。有关详细信息,请查看Express API reference

答案 1 :(得分:0)

让所有红色汽车使用此

GET http://example.com/api/cars?color=red

获取特定的红色汽车使用此

GET http://example.com/api/cars/{id}?color=red

答案 2 :(得分:0)

为什么不使用这个

获得所有红色汽车

[GET] http://example.com/api/car?color=red

获得红色的特定车

[GET] http://example.com/api/car?color=red&id=xxx