代码之家  ›  专栏  ›  技术社区  ›  Erick Gallani

RESTful使用id相同的端点或其他参数是一种好的做法?

  •  0
  • Erick Gallani  · 技术社区  · 7 年前

    脚本

    我有一个案例,当我想通过身份证、普通案例,有时还想通过日期获得一些东西。

    例如:

    /companies/:id/tickets/:id
    /companies/:id/tickets/:date
    

    从我的研究来看,这不是一个好的做法,但我对此表示怀疑。

    我应该使用没有 id号 然后使用有效载荷获取日期?

    例如:

    /companies/:id/tickets
    

    这应该会退还那家公司的所有票,对吗?因此,从有效载荷中获取一些日期数据并将其用作过滤器,在我看来,返回结果并不正确。如果我这样做,我的端点不会诚实地告诉我他们在做什么。

    我应该在这里使用什么休息练习?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Dom    7 年前

    /companies/:id/tickets/:id -这对于获取单个资源很好。

    我想大多数人都会同意,过滤和搜索资源最好使用查询参数。事实上,JSONAPI规范有一个关于它的建议。

    阅读 http://jsonapi.org/recommendations/#filtering 以及其他建议,它们涵盖了最常见的用例,例如您的用例。

    您还可以有一个独立的 tickets 资源,并为其实现公司id过滤器,通常,为同一个资源提供多个URL是很好的。