如何在查询字符串参数和资源名称url之间进行选择以构建新端点?

时间:2017-07-18 17:54:51

标签: rest restful-architecture api-design restful-url

我有3个模特/资源:

  • Model A
  • Model B
  • 属于Model CModel A
  • Model B

然后,我可以像这样构建我的API路径:

/api/a-resources/x/c-resources

/api/b-resources/x/c-resources

或许我可以这样做:

/api/c-resources?a_resource_id=x

/api/c-resources?b_resource_id=x

得到类似的行为......

问题是:

我需要让自己选择这些选项吗?

1 个答案:

答案 0 :(得分:0)

或许想想你的API将如何消费,消费者的工作流程是什么?

  • 如果它首先导航到资源A / B,只有那时他可能会请求C,第一个选项似乎更合适;
  • 但是,如果还有他可能直接需要资源C的情况,那么你可以使用后一种选择。

你显然可以选择其中任何一种,没有错误,REST中的东西很少是黑白分明。