命名约定复数与单数的更多帮助

时间:2015-05-31 22:12:30

标签: node.js rest resources uri naming-conventions

那里有答案,但我的问题有所不同,因为当我对产品进行详细介绍或者当我要在产品上添加详细信息时,我会尝试查找uri #39; s客户。我需要一个标准的解决方案来跟随4个api调用。我需要针对这种特殊情况的标准命名约定,请从以下内容中修复它们。

多个(有s)

http://example.com/newprogram/@/some-parms - 列出所有产品

GET /products - 仅限产品详情(无客户)

奇异

GET /products/1 - 产品详情及其客户

GET /product/1仅限产品1的客户

从上面我试图为这两者找到解决方案。

GET /product/1/customers - 仅限产品详情(无客户)

GET /products/1 - 产品详情及其客户

1 个答案:

答案 0 :(得分:1)

不,不要使用不同的网址来区分有和没有客户的产品。使用content negotioation

要获得嵌入式客户的产品,请使用一个Accept标题:

GET /products/1
Accept: application/vnd.com.example.rest.customer.long+json

要获得没有客户的产品,请使用其他Accept标题。

GET /products/1
Accept: application/vnd.com.example.rest.customer.short+json

但是,由于您要重新评估相同的资源,因此始终使用相同的网址。要请求此网址的不同表示,请使用内容协商。