REST API URL模式设计

luc*_*kim 5 java api rest spring

我目前正在开发REST API.

我正在开发一个返回与用户关联的产品的API,以及一个返回与产品关联的产品的API.

我不能确定如何配置URLpattern是正确的.

我认为含糊不清的是,在URL通过产品返回产品列表的情况下,产品被重复列出.

请告诉我一个好的URL模式.

我正在考虑以下选项.

1.

/domain/v1/relatedProducts/users/{userId}

/domain/v1/relatedProducts/products/{productId}
Run Code Online (Sandbox Code Playgroud)

2.

/domain/v1/user/{userId}/relatedProducts

/domain/v1/products/{productId}/relatedProducts
Run Code Online (Sandbox Code Playgroud)

3.请告知其他网址格式.

Mel*_*ius 7

产品与用户相关,因此您应首先选择用户,然后列出所有产品.所以应该是这样的

/domain/v1/users/{userId}/products
Run Code Online (Sandbox Code Playgroud)

注意我users没有使用userproducts不使用relatedProducts

/domain/v1/users/{userId}/products/{productId}
Run Code Online (Sandbox Code Playgroud)

另请注意,v1您可以保留或删除它没有任何问题,一些主要公司使用版本部分.

您可以遵循URL模式的最佳实践

  1. 使用名词但没有动词
  2. 使用复数名词
  3. 使用子资源进行关系

您可以在restapitutorial资源命名中找到更多有用的详细信息