A有一个实体,但我需要用两种完全不同的方式来表示它。现在过滤器看起来也不同了,但我考虑的是未来,不想从一开始就重复端点。所以我想到了一个端点。
但对于api客户端来说,这似乎非常不清楚,不是吗?
例如,对用户/合作伙伴的请求应该提供一个数据响应,而用户/合作伙伴?custom=true则提供另一个响应数据。我指的不是不同的属性,这可以通过查询'fields=attribute1,attribute2‘来完成。我的意思是,它们具有不同的实体格式,可以具有相同或不同的属性,具有相同或不同的表示格式。例如,第一个请求的属性username可以返回简单的login,但对于第二个请求则返回子属性数组。
那么,在一个端点中拥有如此不同的响应格式是不是一个好主意,或者我应该从一开始就将它们分开?
发布于 2020-09-13 21:50:58
因此,在一个端点中拥有如此不同的响应格式是一个好主意,还是应该从一开始就将它们分开?
通用HTTP客户端并不关心“端点”。
/abcde
/abcde?format=text
/abcde?format=json对于通用客户端而言,这些是不同的标识符,用于查找不同的资源(也称为“文档”)。
对这些资源的请求是否由相同的“端点”处理,这只是一个实现细节。从外部看,无论每个资源是否有自己的终结点,或者某些资源是否共享一个终结点,或者所有资源是否使用相同的终结点,都没有区别。
这意味着,判断共享端点是否是一个好主意取决于平衡其他因素
在某种程度上取决于您的路由所使用的习惯用法framework)
的要求
人机界面中的正确答案很可能取决于这些资源如何适应领域(这些资源是常见文档的真正变体吗?或者它们是不同的文档,只是碰巧从一个公共数据集派生出来的?)
https://stackoverflow.com/questions/63867337
复制相似问题