gpt4 book ai didi

http - 我应该如何在我的 RESTful Web 服务中实现 COUNT 动词?

转载 作者:可可西里 更新时间:2023-11-01 15:04:30 26 4
gpt4 key购买 nike

我已经编写了一个支持标准 CRUD 操作的 RESTful 网络服务,它可以返回一组符合特定条件的对象(搜索动词),但我想添加一个高阶 COUNT 动词,所以客户端可以计算匹配搜索条件的资源,而无需获取所有资源。

我想到的几个选项:

  • 忽略 HTTP 规范并在 HEAD 请求的响应正文中返回对象计数。

  • 复制 SEARCH 动词的逻辑,但发出 HEAD 请求而不是 GET 请求。然后,服务器会将对象计数编码到响应 header 中。

  • 定义一个新的 HTTP 方法 COUNT,它在响应正文中返回对象计数。

我更喜欢第一种方法的 API,但我不得不取消该选项,因为它不合规。第二种方法在语义上似乎最正确,但 API 不是很方便:客户端将不得不处理响应 header ,而大多数时候他们希望能够做一些简单的事情,比如 response.count。所以我倾向于第三种方法,但我担心定义新的 HTTP 方法所涉及的潜在问题。

你会怎么做?

最佳答案

rest 的主要目的是定义一组资源,您可以使用定义明确的动词与之交互。因此,您必须避免定义自己的动词。资源的数量应该被视为不同的资源,具有自己的 uri,您可以简单地获取它。例如:

GET resources?crit1=val1&crit2=val2

返回资源列表

GET resources/count?crit1=val1&crit2=val2

另一种选择是使用连接器:例如Accept: text/uri-list 返回资源列表,Accept: text/plain 仅返回计数

关于http - 我应该如何在我的 RESTful Web 服务中实现 COUNT 动词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5393558/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com