【问题标题】:REST API URL best practiceREST API URL 最佳实践
【发布时间】:2015-01-23 18:57:54
【问题描述】:

假设我有两个模型。 Project 和 Task。一个任务必须属于一个项目。

以下哪个 URL 端点是最佳做法?

  1. 获取https://api.myapp.com/projects/:project_id/tasks/:task_id
  2. 获取https://api.myapp.com/tasks/:task_id?project_id=:project_id

对于过滤结果,我总是使用查询参数,但我想知道我们应该用必需的参数做什么?

【问题讨论】:

    标签: api rest url


    【解决方案1】:

    根据 REST 最佳实践,资源成员应该在 url 中。在您的情况下,这意味着:

    https://api.myapp.com/projects/:project_id/tasks/:task_id

    查询参数应用作过滤器。例如获取名称以“TEST”开头的所有任务/

    https://api.myapp.com/projects/:project_id/tasks/:task_id?nameStartsWith=TEST
    

    您可以在此处阅读更多信息:http://www.restapitutorial.com/resources.html 下载 PDF 并查看第 14 页 - 资源命名。

    【讨论】:

      猜你喜欢
      • 2013-10-23
      • 2020-05-29
      • 2018-04-27
      • 2018-05-25
      • 2020-04-23
      • 1970-01-01
      • 1970-01-01
      • 2016-07-23
      相关资源
      最近更新 更多