5

问题是关于 JSON API 规范以及如何正确执行请求(我正在使用 ruby​​ on rails 和 json api resources gem 但无论如何这是一个普遍的问题,我知道如何实现它,我只想遵循 JSON 的规则API 位于:http: //jsonapi.org/format/

情况一:

  • 我想要所有的架子
  • 我想包括那些书架上的所有书籍
  • 在这种情况下我应该使用的 get 是: www.library.com/shelves?include=books

情况2:

  • 我想获取所有书籍,但只获取标记为未读的书籍

  • 我应该使用的 get 是: www.library.com/books?filter[unread]=true

为所有包含未读书籍的书架设计请求的正确方法是什么?

想不通这个

www.library.com/shelves?include=books&filter[books.unread]=true?

www.library.com/shelves?include=unread_books? <- 必须指定另一个资源,未读的书籍

www.library.com/shelves?filter[books.unread]=true?

这样做的最正确方法是什么?

编辑

在与我的技术主管和其他一些程序员交谈后,在这种情况下,第一个选项最受青睐

4

2 回答 2

7

我敢打赌第一个:

www.library.com/shelves?include=books&filter[books.unread]=true
于 2016-10-23T16:40:38.653 回答
2

JSON API 目前不支持过滤包含,但这并不意味着您必须严格定义(检查https://github.com/cerebris/jsonapi-resources/issues/314

我会采用与布赖恩相同的方法: www.library.com/shelves?include=books&filter[books.unread]=true

我只是想为答案提供更多背景知识。

于 2016-11-23T12:22:27.433 回答