我有一个 REST API,它使用 GET 提供对资源的访问。
使用这种方法,我可以获得特定实例或所有实例。
在这种情况下,一个实例是不够的,所有实例都太多了。
我所做的是创建一个具有 /api/filteredresource 之类的模式的新控制器,并创建一个 POST 请求,其主体包含过滤器的表示,用于限制返回的项目列表。
我不是在寻找“我如何……”的答案,而是“我应该这样做……”的答案。
这里最好的做法是什么?
这篇 StackOverflow 文章似乎建议我不应该这样做,因为数据不能(或更确切地说不应该)被缓存,但在这种情况下缓存这些过滤的数据没有意义。我想我正在寻找一个务实的答案,而不是一个技术上正确的答案。
** 编辑 ** 最初的要求是只搜索与特定状态匹配的资源实例,但这似乎是“第一步”。他们有一个他们想要使用的“搜索关键字”,其中包含与资源本身元素匹配的各种属性,在许多情况下,他们希望能够使用这个“搜索关键字”(或它的表示)作为过滤器。** 结束编辑 **